npm работает через командную строку, но не git bash

Я использовал диспетчер версий узлов для Windows, чтобы установить NodeJS, выполнив:

      nvm install 16.2.0

npm все еще не работал, поэтому я побежал

      nvm list available

Что привело меня сюда: https://nodejs.org/download/release

Я скопировал файлы из npm / npm-1.4.9.zip в каталог v16.2.0 и подтвердил, что он работает, открыв командную строку и выполнив:

      npm -v

Однако, если я открываю Git BASH и пытаюсь выполнить ту же команду, я получаю следующее сообщение об ошибке:

bash: npm: команда не найдена

Итак, я проследил за бесчисленными потоками переполнения стека о том, как решить эту проблему. Почти все говорили, что нужно перезапустить Git BASH или Visual Studio Code, так что я это сделал, и это не сработало. Затем я перезапустил свой компьютер, и он не работал. Итак, я попытался обновить свой, выполнив в командной строке следующее:

      npm config get prefix

Затем взяв это значение и добавив его к моему PATHпеременная окружения. Затем я выключил все, перезапустил компьютер, открыл Git BASH и снова попытался запустить, но это все равно выдает ту же ошибку.

Я в своем уме и не знаю почему npm работает в моей командной строке, но не будет работать в git bash.

ОБНОВЛЕНИЕ Стоит отметить, что node -v отлично работает с Git BASH, просто npm -v

2 ответа

Мне удалось решить свою проблему, хотя я не уверен, является ли это ошибкой с NVM или нет.

На момент написания этой статьи текущая LTS-версия NodeJS - 14.17.0. Итак, я выполнил:

      nvm install 14.17.0
nvm use 14.17.0

Это не только правильно установило NPM, но и установило для меня PATH.

Поэтому по какой-то причине установка новейшей версии NodeJS через NVM не установила NPM, но установила текущую версию LTS.

Вам нужно будет добавить NVM в свойC:\Users\PROFILE\.bashrc(Если этот файл не существует, создайте его.)

.bashrc:

      export NVM_DIR="$NVM_HOME"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

Примечание: (некоторые старые руководства по использованию NVMexport NVM_DIR="$HOME/.nvm", а это не то, чего мы хотим. Если вы используете последнюю версиюNVM for Windows, Для того чтобыcmdиgit bashчтобы быть идентичными, нам нужноexport NVM_DIR="$NVM_HOME".)

Другие вопросы по тегам