Подтвердить что ты не робот

Homebrew устанавливает nvm, но nvm не может быть найден позже?

Я использую homebrew и oh-my-zsh в новой версии OSX 10.10.1. Я получил nvm через homebrew, а затем попытался запустить его, но сказал - zsh: команда не найдена: nvm

Есть идеи, в чем проблема? Я смог установить и использовать git просто отлично...

enter image description here

enter image description here


ОБНОВЛЕНО 20.09.2009

Как указано в более недавних ответах DarkPurple141 и Элиз ван Лоидж. nvm не совместим с homebrew. Об этом также говорится в официальном репозитории nvm-sh, расположенном здесь.

Homebrew установка не поддерживается. Если у вас есть проблемы с установил homebrew nvm, пожалуйста, удалите brew и установите его, используя инструкции ниже, до подачи вопроса.

Примечание: если вы используете zsh, вы можете легко установить nvm как плагин zsh. Установите zsh-nvm и запустите обновление nvm для обновления.

Следующие шаги должны помочь:

  1. $ brew uninstall nvm
  2. $ brew cleanup (только для примера)
  3. $ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash
  4. Проверьте правильность установки nvm, запустив $ command -v nvm.

    4.a Если ответ отличается от $ nvm, добавьте следующие две строки в файл ~/.bash-profile:   export NVM_DIR=~/.nvm   source ~/.nvm/nvm.sh 4.b Перезагрузите компьютер (вы можете попробовать закрыть Терминал и сначала перезапустить его) 4.c $ command -v nvm should now return nvm '

  5. Теперь обновите Node.js с помощью $ nvm install --lts

  6. Обновите npm: $ nvm install-latest-npm
  7. $ npm install --global mocha. Наконец, успехов! Ну, для меня, и я надеюсь на тебя тоже.
4b9b3361

Ответ 1

Вы следовали инструкциям, перечисленным в оговорках?

[~] brew info nvm
nvm: stable 0.20.0, HEAD
https://github.com/creationix/nvm
Not installed
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/nvm.rb
==> Caveats
Add the following to $HOME/.bashrc, $HOME/.zshrc, or your shell's
equivalent configuration file:

  source $(brew --prefix nvm)/nvm.sh

Node installs will be lost upon upgrading nvm. Add the following above
the source line to move install location and prevent this:

  export NVM_DIR=~/.nvm

Без дополнительной конфигурации это не похоже на то, что он найдет NVM по умолчанию.

Ответ 2

Есть много вещей, которые вам нужно сделать. Следуйте предостережениям, указанным после установки nvm через brew, и THEN вам нужно активировать/перезагрузить изменения .bash_profile.

  • Выполнить brew install nvm
  • Следуйте предостережениям, показанным на консоли, мои были следующими, ваш может быть другим!:

Добавьте следующее в ~/.bash_profile или требуемую оболочку файл конфигурации:

export NVM_DIR="$HOME/.nvm"
. "$(brew --prefix nvm)/nvm.sh"
  1. Запустите . ~/.bash_profile, чтобы применить изменения, внесенные в файл .bash_profile.

Ответ 3

Хотя принятый ответ технически работает, стоит отметить, что установка Homebrew официально не поддерживается пакетом nvm. Рекомендуемый способ избежать проблем, подобных тем, которые были подняты выше, - это применить любой из приведенных ниже методов установки.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash

# or wget:
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash

источник: https://github.com/creationix/nvm

Ответ 4

Я потратил пару часов на то, чтобы разобраться в этом вопросе, но я пришел к выводу, что DarkPurple141 прав: nvm просто не совместим с Homebrew, так как они утверждают на своем Github nvm-sh/nvm Node Version Manager. Homebrew установит nvm, и все выглядит нормально, пока не попробуют получить npm для установки модуля, Mocha в моем случае. Это вернуло меня к ужасной ошибке:

ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules'

ПРИМЕЧАНИЕ. На шаге 3 обязательно замените версию верной версией.

Решение для MacOS 10.14 Mojave было следующим:

  1. $ brew uninstall nvm
  2. $ brew cleanup (только для примера)
  3. $ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash
  4. Проверьте правильность установки nvm, запустив $ command -v nvm.

    4.a Если ответ отличается от $ nvm, добавьте следующие две строки в файл ~/.bash-profile:   export NVM_DIR=~/.nvm   source ~/.nvm/nvm.sh 4.b Перезагрузите компьютер (вы можете попробовать закрыть Терминал и сначала перезапустить его) 4.c $ command -v nvm should now return nvm '

  5. Теперь обновите Node.js с $ nvm install --lts

  6. Обновите npm: $ nvm install-latest-npm
  7. $ npm install --global mocha. Наконец, успехов! Ну, для меня, и я надеюсь на тебя тоже.

Ответ 5

Я хотел бы добавить, что местоположение nvm на github изменилось, и версия повысилась. Команда curl теперь должна выглядеть так:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash

Ответ 6

Причина, по которой вам потребуется перезагрузить профили bash или любые другие файлы bash, может быть потому, что команда nvm может не быть программой, а функцией, которая определена и может использоваться только в том случае, если соответствующий bash файл получен.

В системе, которую я проверил

which nvm 

не работает, но

nvm list

делает. Это означает, что вы можете использовать слово "nvm" для вызова чего-либо. Это что-то не программа. В текущем случае это функция, которую можно проверить с помощью

typeset -F | grep -P ' nvm$'

который выводит

declare -F nvm

что означает, что nvm - это функция, тело которой можно проверить, выполняя

type -F nvm

Ответ 7

Одна из возможностей использования brew заключается в том, что nvm может быть отсоединен, особенно если он был установлен другим пользователем MAC OS.

В этом случае выполните:

brew link nvm

Ответ 8

Для установки nvm, brew install nvm

Чтобы запустить nvm после установки или только один раз, $(brew --prefix nvm)/nvm.sh

Запускать nvm каждый раз, когда открывается zsh

  1. nano ~/.zshrc
  2. Добавьте этот source $(brew --prefix nvm)/nvm.sh строки source $(brew --prefix nvm)/nvm.sh