トラブルが発生し始めたとき、phonegap
経由でアップグレードしようとしてnpm
いました。簡単に言うと、node_modules
私のコンピュータには2つのディレクトリがあります。
/usr/local/lib/node_modules
/usr/local/share/npm/lib/node_modules
を実行するとnpm upgrade -g phonegap
、npm
にあるパッケージのコピーが更新されているように見えます/usr/local/lib/node_modules
。ただし、which phonegap
シンボリックリンクがの古いインストールを指していることがわかった場合/usr/local/share/npm/lib/node_modules
。
また、などのスタンドアロンパッケージをインストールしようとするexpress
と、ファイルは/usr/local/lib/node_modules
ディレクトリにインストールされますが、実行可能ファイルへのシンボリックリンクがのどこにも作成されません$PATH
。
2つの質問:
- Mac OS Xのノードモジュールに適切なディレクトリはどれですか?
ソフトウェアのインストール時にnpm
実行可能ファイルをリンクするように構成するにはどうすればよい$PATH
ですか?
ボーナスポイント:インストール方法はnode
構成に影響しますか?あります多くのオプションが。
編集:私は、シンボリックリンクが私の中に作成されたことを考え出した/usr/local/bin
が、私は.bash_profile
と設定した/usr/local/share/npm/bin
の先に/usr/local/bin
私の中で$PATH
。ある時点でそのパスをプロファイルに追加したことを漠然と覚えていますが、その理由はわかりません。
したがって、問題は次のようになります。node_modules
コンピュータ上に2つの異なるディレクトリができたのはなぜですか。またnode_modules
、share/npm/lib
サブディレクトリではなくサブディレクトリに自分を置きたいのはなぜ/usr/local/lib
ですか。