Установка шаблона Дюрандаля с мимозой, кажется, ломается при указании пути

StackOverflow https://stackoverflow.com//questions/21053251

  •  22-12-2019
  •  | 
  •  

Вопрос

Узел, мимоза, дюрандаль новичок.Я пытаюсь установить скелет мимозы из Дюрандаля на окна, как подробно описано на сайт Дюрандаля.Запуск этой команды:

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top