sudo:npm:使用 sudo 运行 npm 时找不到命令

问题描述 投票:0回答:2

我使用命令

nvm install 8.11.2
安装了nodejs v8.11.2和npm v5.6.0。

当我关闭系统一段时间后打开系统并在终端中写入

npm -v
时,它说npm未安装,并使用
sudo apt install npm
安装它。

但是当我再次输入

nvm install 8.11.2
时,它说nodejs和npm已经安装并且开始使用它。有时打开不同的终端时,
npm -v
表示未安装npm。后来当我使用命令
sudo npm install
时,输出来了:

sudo: npm: command not found

所以我用

sudo apt-get install npm
安装了npm,但它安装了npm v3.5.2并用
npm install npm@latest -g
更新它没有任何反应,即它仍然是npm v3.5.2。

我的一个项目需要 npm v5.6.0,并且不知道如何解决这个问题。请帮忙。

node.js npm nvm
2个回答
6
投票

(这里是 nvm 维护者)

  1. sudo
    不能、也不能与
    nvm
    一起使用。
    nvm
    是每个用户、每个 shell。
  2. npm
    不应单独安装;它带有节点。你应该 apt-get 删除它。
  3. 如果 nvm 未在新 shell 上正确加载,请尝试重新运行安装脚本,然后在 http://nvm.sh 上提交问题,我很乐意直接为您提供帮助。

0
投票

对我来说,解决方案是创建这两个链接:

sudo ln -s "$(which npm)" /usr/bin/npm

sudo ln -s "$(which node)" /usr/bin/node

参见用户14219984的回答

© www.soinside.com 2019 - 2024. All rights reserved.