我在编译或运行应用程序时经常遇到与路径相关的问题。我有两个版本的节点在我的系统中,一个来自官方仓库,另一个手动从源代码安装。今天我想编译括号,当我运行npm install
它时,它要求我使用更高版本,例如 1.4.20。它的默认版本是,/usr/bin/npm
它不起作用。手动安装的版本是/usr/local/bin/npm
有什么方法可以将 /usr/local/bin/npm
其用作默认路径update-alternatives
或其他方法?
例如,您可以使用以下方式设置默认文本编辑器
sudo update-alternatives --config editor
答案1
我找到了解决方法。首先,我检查了 npm
中的旧版本 (1.3.10)的默认路径/usr/bin/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
效果很好
答案2
既然你提到节点,我想我可以指出,这是一个很好的机会来利用NodeJS 的 N 安装管理器。如果我有像这样的“更高级别”的包管理器,我通常会使用它更新替代方案。在我看来,这通常比自己尝试查找重要文件要简单得多。话虽如此,我认为更新替代方案仍可工作。