Установка шаблона Дюрандаля с мимозой, кажется, ломается при указании пути
Вопрос
Узел, мимоза, дюрандаль новичок.Я пытаюсь установить скелет мимозы из Дюрандаля на окна, как подробно описано на сайт Дюрандаля.Запуск этой команды:
mimosa skel:new durandal "C:\Users\Anthony\node projects\typelearn"
(кавычки, потому что окна и пробел в пути) выдают мне эту ошибку с неправильным путем к месту установки шаблона:
C:\Users\Anthony>mimosa skel:new durandal "C:\Users\Anthony\node projects\typele
arn"
13:16:11 - Retrieving registry...
13:16:11 - Found skeleton in registry
13:16:11 - Cloning GitHub repo [[ git://github.com/BlueSpire/Durandal-Mimosa-Ske
leton.git ]] to temp holding directory.
13:16:13 - Moving cloned repo to [[ C:\Users\Anthony\C:\Users\Anthony\node proj
ects\typelearn ]].
fs.js:642
return binding.mkdir(pathModule._makeLong(path),
^
Error: ENOENT, no such file or directory 'C:\Users\Anthony\C:\Users\Anthony\node
projects\typelearn'
at Object.fs.mkdirSync (fs.js:642:18)
at _moveDirectoryContents (C:\Users\Anthony\AppData\Roaming\npm\node_modules
\mimosa\node_modules\skelmimosa\lib\command\new.js:87:8)
at C:\Users\Anthony\AppData\Roaming\npm\node_modules\mimosa\node_modules\ske
lmimosa\lib\command\new.js:64:5
at ChildProcess.exithandler (child_process.js:635:7)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:735:16)
at Socket.<anonymous> (child_process.js:948:11)
at Socket.EventEmitter.emit (events.js:95:17)
at Pipe.close (net.js:466:12)
Удаление кавычек вокруг пути к файлу в аргументе командной строки приводит к той же ошибке.Наличие пути к файлу без пробелов дает ту же ошибку.
Обратите внимание, что это работает нормально: C:\Users\Anthony\node projects\typelearn>mimosa skel:new durandal
Один вопрос:
- как мне заставить скелет правильно установиться?Мне кажется это баг:
C:\Users\Anthony\C:\Users\Anthony\node projects\typelearn
это определенно не существующий путь, но мимоза пытается переместить туда клонированный репозиторий.
Решение
Я считаю, что исправил эту ошибку и выпустил новую версию Mimosa.В настоящее время я не могу протестировать Windows, но надеюсь, что решение было кроссплатформенным.
Предоставленная папка всегда предполагалась как что-то в текущем каталоге.Но я рад поддержать вариант использования, который вы здесь подняли.
Эта же проблема укусит вас mimosa new
слишком.Я исправлю это после того, как выпущу 2.0
где-то позже в этом месяце.
Другие советы
Похоже, путь должен быть относительно текущего каталога, поэтому я полагаю, что это будет работать:
C:\Users\Anthony>mimosa skel:new durandal "\node projects\typelearn"
.
Поскольку он выглядит так, как будто он автоматически добавляет текущий путь к прилагаемую.Поэтому, возможно, документы должны быть более конкретными или ошибками, заключается в том, что команда должна также допустить абсолютных путей.
Я думаю, что это ошибка.Это работает нормально:
C:\Users\Anthony\node projects\typelearn>mimosa skel:new durandal
14:28:11 - Retrieving registry...
14:28:11 - Found skeleton in registry
14:28:11 - Cloning GitHub repo [[ git://github.com/BlueSpire/Durandal-Mimosa-Ske
leton.git ]] to temp holding directory.
14:28:13 - Moving cloned repo to [[ C:\Users\Anthony\node projects\typelearn ]]
.
14:28:13 - Cleaning up...
14:28:13 - Skeleton successfully cloned from GitHub.
C:\Users\Anthony\node projects\typelearn>
.
Ошибка, созданная здесь: https://github.com/dbashford/mimosa/issues/339