bash: npm: command not found in Debian 9.3

12

我正在使用Debian 9.3 (stretch),无法运行 "npm" 命令。

node -v 的输出结果:

bash: node: command not found

nodejs -v 输出结果:

v4.8.2

npm -v的输出结果。

bash: npm: command not found

我是Debian的新手,无法理解发生了什么情况。
- 我已经重新安装了Node.js
- 我已经尝试按照官网的步骤进行操作。
- 我已经运行了apt-get install npm,但输出E: Unable to locate package npm
- 我曾经在Debian Testing中遇到同样的错误。

感谢您的阅读和帮助。
- Melt


请访问此链接: https://dev59.com/t2Ml5IYBdhLWcg3wyJby 希望能帮到您。 - harish durga
可能是nodejs vs node on ubuntu 12.04的重复问题。 - Claudio Cortese
1
可能是E: 无法定位软件包npm的重复问题。 - tripleee
4个回答

10

我曾经遇到过与Debian相同的问题,后来尝试了以下方法,问题得以解决。

运行以下命令:

curl -L https://npmjs.org/install.sh | sudo sh

检查版本号:

npm -v

在完成这些步骤之后,您应该会看到以下内容:enter image description here


9
你是否从官网安装了Node.js?如果不是,请卸载它apt-get remove nodejs,并通过此链接安装(按照以下步骤操作)https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions

编辑

在查看了您的版本之后,我意识到您正在运行较旧的nodejs版本...请删除当前nodejs版本(V4.8.2),并通过此链接进行安装https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions。它将为您安装最新版本(我的是V9.2.0),同时也会安装NPM。


是的,我最初是从他们的网站上完成的。 :B - Orlando Cartagena
@OrlandoCartagena,你能给出 which npm 的输出吗? - Diogo Jesus
也意识到你的nodejs版本不是最新的...你正在运行v4,而最新版本是v9.2...这可能是原因。 - Diogo Jesus
我重新安装了它,但仍然是4.8.2版本。 - Orlando Cartagena
哦,算了,我太蠢了...我打的是"curl -sL https://deb.nodesource.com/setup_9.x | sudo -E bash -",而在Debian上应该是在sudo命令之后加上"curl -sL https://deb.nodesource.com/setup_9.x | bash -"。非常感谢!:B - Orlando Cartagena

3

您的软件包版本过旧(在Debian 9上追加),如果您尝试:apt-cache show nodejs,我想您会看到多个版本的建议。

只需找到您想要用于安装nodejs的正确存储库名称:

例如,对我来说是:

cat /etc/apt/sources.list.d/nodesource.list 
deb https://deb.nodesource.com/node_10.x stretch main
deb-src https://deb.nodesource.com/node_10.x stretch main

强制在安装过程中使用stretch软件源库:
sudo apt install -t stretch nodejs

安装完成后,您将获得所有预期版本的软件包:

$ nodejs -v
v10.7.0
$ npm -v
6.1.0

1
如果 nodejs -v 显示版本,说明已经安装了 nodejs。你需要为 node 创建软链接。运行以下命令: sudo ln -s /usr/bin/nodejs /usr/bin/node 然后运行 sudo apt-get install -y build-essential 现在检查 node -vnpm -v。它会显示版本号。

1
Node -v 可以正常运行,但是 npm -v 还不能正常工作。 :B - Orlando Cartagena
2
尝试运行 sudo apt-get install npm - HOTAM SINGH
1
'E: 无法定位软件包npm' - Orlando Cartagena
已解决..感谢帮助我!:B - Orlando Cartagena

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接