OSX 10.10.1の新規インストールでhomebrew
とoh-my-zsh
を使用しています。 nvm
経由でhomebrew
を取得して実行しようとしましたが、-zsh:command not found:nvm
問題が何か分かりますか? gitをインストールして使用できました...
2019年9月20日更新
DarkPurple141 および Elise van Looij からの最近の回答で述べられているように。 nvm
はhomebrew
と互換性がないようです。これは here にある公式のnvm-shリポジトリにも記載されています。
Homebrewのインストールはサポートされていません。 homebrew-installed nvmに問題がある場合は、問題を報告する前に、それをbrewアンインストールし、以下の手順を使用してインストールしてください。
注:zshを使用している場合、nvmをzshプラグインとして簡単にインストールできます。 zsh-nvmをインストールし、nvm upgradeを実行してアップグレードします。
次の手順が役立ちます。
brew uninstall nvm
brew cleanup
(適切な測定のため)curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash
$ command -v nvm
を実行して、nvmが正しくインストールされたことを確認します。
4.a応答が$ nvm
以外の場合、次の2行を〜/ .bash-profileファイルに追加します。export NVM_DIR=~/.nvm
source ~/.nvm/nvm.sh
4.bコンピューターを再起動します(最初にターミナルを閉じて再起動してみてください)4.c $ command -v nvm should now return
nvm`
Node.jsを$ nvm install --lts
で更新します
nvm install-latest-npm
npm install --global mocha
。最後に、成功!まあ、私にとっても私もあなたのために願っています。警告に記載されている指示に従いましたか?
[~] 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つあります。 brew経由でnvmをインストールした後に表示される警告に従ってください。そして、.bash_profileの変更をactivate/reloadする必要があります。
brew install nvm
〜/ .bash_profileまたは目的のシェル構成ファイルに次を追加します。
export NVM_DIR="$HOME/.nvm" . "$(brew --prefix nvm)/nvm.sh"
. ~/.bash_profile
.bash_profileファイルに加えた変更を適用する受け入れられた答えは技術的には機能しますが、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
私はこの問題に数時間を費やしましたが、DarkPurple141が正しいという結論に達しました:NvmはGithubで述べているようにHomebrewと互換性がありません nvm- sh/nvm Node Version Manager 。Homebrewはnvmをインストールし、モジュールをインストールするためにnpmを取得しようとするまではすべて正常に見えます。私の場合はMochaです。恐ろしいエラー:
ERR!エラー:EACCES:許可が拒否されました、アクセス '/ usr/local/lib/node_modules'
MacOS 10.14 Mojaveでのソリューションは次のとおりです。
brew uninstall nvm
brew cleanup
(適切な測定のため)curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash
$ command -v nvm
を実行して、nvmが正しくインストールされたことを確認します。
4.a応答が$ nvm
以外の場合、次の2行を〜/ .bash-profileファイルに追加します。export NVM_DIR=~/.nvm
source ~/.nvm/nvm.sh
4.bコンピューターを再起動します(最初にターミナルを閉じて再起動してみてください)4.c $ command -v nvm should now return
nvm`
Node.jsを$ nvm install --lts
で更新します
nvm install-latest-npm
npm install --global mocha
。最後に、成功!まあ、私にとっても私もあなたのために願っています。Nvmをインストールするには、_brew install nvm
_
インストール後または一度だけnvmを実行するには、$(brew --prefix nvm)/nvm.sh
zsh
が開くたびにnvmを実行するには
nano ~/.zshrc
_source $(brew --prefix nvm)/nvm.sh
Bashプロファイルまたは他のbashファイルをリロードする必要がある理由は、コマンドnvmはプログラムではなく、定義され、対応するbashファイルがソースされている場合にのみ使用できる関数である可能性があるためです。
チェックしたシステムで
which nvm
動作しませんが、
nvm list
します。つまり、「nvm」という単語を使用して何かを呼び出すことができます。それはプログラムではありません。現在のケースでは、次の方法で検証できる関数です
typeset -F | grep -P ' nvm$'
どの出力
declare -F nvm
つまり、nvmは関数であり、その本体は次のようにして検査できます。
type -F nvm
brew
が使用された場合の可能性の1つは、特に別のMAC OSユーザーによってインストールされた場合、nvm
がリンク解除される可能性があることです。
この場合、次を実行します。
brew link nvm