NVM дает ошибку при выполнении nvm ls
Я пытался установить и переключаться между версией узла, поэтому сначала я устанавливаю nvm, используя ниже
Administrators-MacBook-Pro:~ user.name$ sudo npm install nvm -g
Password:
npm http GET https://registry.npmjs.org/nvm
npm http 304 https://registry.npmjs.org/nvm
npm http GET https://registry.npmjs.org/mkdirp
npm http 304 https://registry.npmjs.org/mkdirp
/usr/local/bin/nvm -> /usr/local/lib/node_modules/nvm/bin/nvm
nvm@0.0.1 /usr/local/lib/node_modules/nvm
└── mkdirp@0.3.5
После этого я пытался сделать "nvm ls", чтобы отобразить версию узла, но это дало мне ошибку (ниже). Посоветуйте пожалуйста что с ним не так
Administrators-MacBook-Pro:~ user.name$ nvm ls
module.js:340
throw err;
^
Error: Cannot find module '/usr/local/lib/node_modules/nvm/bin/nvm-ls'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/usr/local/lib/node_modules/nvm/bin/nvm:15:1)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
6 ответов
Я недавно столкнулся с этой проблемой после того, как я установил nvm как пакет npm (из https://npmjs.org/package/nvm).
Чтобы решить эту проблему, установите nvm напрямую, используя инструкции на https://github.com/creationix/nvm
После установки и
source ~/.nvm/nvm.sh
побежал (это важно, так как это делает nvm доступным в вашем текущем терминальном сеансе), тогда вы сможете запустить
nvm ls
и другие команды nvm успешно из вашего каталога проекта.
Надеюсь, что это помогает & ура к обучению узла!
Чтобы использовать команду nvm, вы должны получить ее, как описано выше. Но вы не хотите делать это после каждого входа в систему.
Просто добавьте эти строки в файл ~ /.bashrc, ~ /.profile или ~/.zshrc, чтобы автоматически получать его при входе в систему:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
Смотрите также https://github.com/creationix/nvm
Просто чтобы добавить, я также использую mac, но не установленная по умолчанию оболочка (zsh) при установке nvm изменит.bash_profile (и добавит строку "source ~/.nvm/nvm.sh")
так что я получаю ту же ошибку, вы должны убедиться, что вам нужно добавить "source ~ /.nvm / nvm.sh" в файл профиля оболочки (для меня это был.zshrc)
@jewel верен: по состоянию на январь 2016 года (а может и раньше) версия nvm с установленной NPM больше не существует (по крайней мере, ее репозиторий github дает 404). Если этот старый, необслуживаемый пакет установлен, вы можете увидеть такие ошибки, как "local" not implemented yet
или же Error: Cannot find module './nvm-help'
при наборе команд nvm.
Правильная версия nvm теперь взята с https://github.com/creationix/nvm
Если вы установили более раннюю (теперь не поддерживаемую) версию, вы можете вернуться в эфир, выполнив следующие действия:
npm uninstall -g nvm
- Использование скрипта установки на странице GitHub выше
Вы обновили свой путь, чтобы включить./node_modules/.bin? Например:
export PATH=./node_modules/.bin:$PATH
Самый простой способ - удаление .nvm
каталог, который хранится в вашем домашнем каталоге (/home/yourname
) и переустановите nvm.
Источник: https://github.com/creationix/nvm
Мое решение nano ~/.zshrc add export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")" [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # Это загружает nvm, затем перезапускает терминал