node)已被改为nodejs,因为与另一个软件包存在名称冲突。以下是Debian的自述文件所说的内容:
Node.js解释器命令的上游名称是“node”。
在Debian中,解释器命令已更改为“nodejs”。
这样做是为了防止命名空间冲突:其他命令在其上游中使用相同的名称,
如来自“node”软件包的ax25-node。
调用Node.js作为shell命令的脚本必须更改为使用“nodejs”命令。
然而,使用nodejs安装使用npm的软件包会出现问题。 安装软件包时会失败并显示以下错误:
sh: 1: node: not found
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read /usr/share/doc/nodejs/README.Debian
我该如何让npm知道系统中已经安装了nodejs,但解释器的名称不同?
/usr/bin
中运行ln -s nodejs node
,但这有点像是一种黑客行为。 - vbo