アプリのコンパイル中または実行中にパス関連の問題が頻繁に発生します。システムにはnodeの2つのバージョンがあります。1つは公式リポジトリから、もう1つはソースから手動でインストールします。今日は括弧をコンパイルしたかったのですが、npm install
を実行すると、1.4.20などの新しいバージョンを使用するように求められました。デフォルトのバージョンは/usr/bin/npm
にあり、動作しませんでした。手動でインストールされたものは/usr/local/bin/npm
にあります
/usr/local/bin/npm
または別の方法を使用して、update-alternatives
をデフォルトのパスとして作成する方法はありますか?
たとえば、デフォルトのテキストエディターを次のように設定できます。
Sudo update-alternatives --config editor
その方法を見つけました。最初に/usr/bin/npm
の古いバージョン(1.3.10)であるnpm
のデフォルトパスをチェックアウトしました。これは/usr/share/npm/bin/npm-cli.js
へのシンボリックリンクであることに気付きました。
Sudo unlink /usr/bin/npm
その後、次のコマンドを試しました
Sudo update-alternatives --install /usr/bin/npm npm /usr/local/bin/npm 10
Sudo update-alternatives --install /usr/bin/npm npm /usr/share/npm/bin/npm-cli.js 20
今、私は簡単にそれらを切り替えることができます
Sudo update-alternatives --config npm
うまくいく
あなたがnodeに言及したので、これは NodeJS用のNインストールマネージャ 。このような「上位レベル」のパッケージマネージャーがある場合、通常はupdate-alternativesで使用します。通常、重要なファイルを自分で追跡するよりも複雑ではありません。IMO。とはいえ、update-alternativesは引き続き機能すると思います。