npm现在有节点.这是什么意思?

nog*_*ade 18 node.js npm

Node noob在这里.

我以前分别安装了npm和node.

显然,npm现在带有节点.(链接)

对我的新手来说,这意味着我以前的双重安装是旧的和丑陋的.1二进制> 2个二进制文件.所以我卸载了两个.

然后我安装后的最新节点的过程.(我正在运行eOS)

终奌站

user@box:-$ which node
/usr/bin/node
user@box:-$ node -v
v0.10.22
user@box:-$ which npm
user@box:-$ npm -v
bash: /usr/bin/npm: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我总能跑:

curl https://npmjs.org/install.sh | sh
Run Code Online (Sandbox Code Playgroud)

但这似乎表明npm实际上不包含在节点中.

当他们说他们被包括在内时他们只是意味着代码在同一个回购中,但二进制文件仍然不同?

最后一个问题我有/ usr/bin/node以及/ usr/bin/nodejs可以删除其中一个吗?我不确定何时/何地我拿起第二份副本.

Pet*_*ons 13

  • 是的,nodejs包包括nodenpm可执行文件.每个代码都有自己的repo,但是打包时都包含它们.
  • npm来源:https://github.com/isaacs/npm
  • 节点源:https://github.com/joyent/node
  • 当您从PPA安装.deb文件,你应该得到双方/usr/bin/nodejs/usr/bin/npm在2符号链接/usr/bin/node(指向)/etc/alternatives/node(指向/usr/bin/nodejs).
    • 如果这不是真的,那么您的安装并没有完全成功,很可能是由于手动安装中遗留的文件存在冲突.我建议卸载.deb,然后确保手动安装中没有旧的文件,然后重新安装.


tan*_*ols 5

我遇到过问题(主要是在 Mac 上),npm 最终位于不在终端 PATH 中的目录中。如果您知道 npm 的位置,则可以将其添加到您的路径中,如下所示:

export PATH=$PATH:/path/to/npm
Run Code Online (Sandbox Code Playgroud)

我认为(我不在 Mac 上,所以我现在无法检查)它有时会被放入/usr/local/share/. 但无论如何,问题可能不是 npm 没有安装,而是它安装在你不期望的地方。


Bri*_*sch 5

只有 node.js带有 npm。因此,如果您使用的是安装.msi.exe.dmg .pkg.deb或使用包安装程序一样apt-getyum或者brew,那么你就必须两个节点和故宫。

但是,npm 不是节点核心的一部分。如果您正在安装节点并使用您正在使用的方法./configuremake install|| make link,那么将不会安装 npm,需要使用相同类型的安装进行编译,并且必须将 node 放置在您的路径上。

如果您使用 git 或解压缩的 node 并且您可以看到配置脚本,那么您还需要获取 npm。