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


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

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

Введите описание изображения здесь

Введите описание изображения здесь

4 44

4 ответа:

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

[~] 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 по умолчанию..

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

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

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

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

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

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

which nvm 

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

nvm list

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

typeset -F | grep -P ' nvm$'

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

declare -F nvm

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

type -F nvm

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

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

brew link nvm