gpt4 book ai didi

node.js - Homebrew:在 node@8 旁边安装最新的 npm 版本

转载 作者:行者123 更新时间:2023-12-05 05:15:16 25 4
gpt4 key购买 nike

情况:

我正在使用 Node 的 LTS 版本,即 node@8 并在 macOS High Sierra 上使用 Homebrew 软件安装它。它与自己的 npm 版本打包在一起。 ,即 npm v5.6.0 .

当我输入 which node 时我也得到 /usr/local/opt/node@8/bin/node这是 node@8 中的 npm 版本包。

当我运行 npm install -g npm ,控制台输出:

/usr/local/bin/npx -> /usr/local/lib/node_modules/npm/bin/npx-cli.js
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
+ npm@6.3.0
added 1 package and updated 3 packages in 9.884s

...但是 npm --version仍然显示我在 5.6.0 .

问题:

鉴于此,我该如何更新 npm到版本 6独立于node用 Homebrew 软件还是 npm?

最佳答案

精简版:

确保usr/local/bin出现在 /usr/local/opt/node@8/bin 之前在你的PATH .


长版:

安装时 node@8我添加了 export PATH=/usr/local/opt/node@8/bin:$PATH出于某种原因我的 .bash_profile (或者可能是 .bash_rc 在你的情况下)放置 /usr/local/opt/node@8/bin在我的路径的开始,即我的 PATH 的前几个条目是:usr/local/opt/node@8/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin ...就我而言。

在这种情况下 npm/usr/local/opt/node@8/bin 中搜索可执行文件在搜索 /usr/local/opt/node@8/bin/npm 之前首先(找到指向版本 5 的 /usr/local/bin)它会在哪里找到/usr/local/bin/npm (指向版本 6)。

所以我删除了export PATH=/usr/local/opt/node@8/bin:$PATH来自 .bash_profile .我也可以更改 .bash_profile 中的条目至 export PATH=$PATH:/usr/local/opt/node@8/bin附加 /usr/local/opt/node@8/bin到 PATH 的结尾,而不是将其添加到 PATH 的开头。

现在npm首先在 /usr/local/bin 中搜索可执行文件并找到版本 6。

感谢@OrtomalaLokni 在您的评论中指出我的路径。


附加说明:添加/usr/local/opt/node@8/binbrew link node@8 以来不需要添加到 PATH为 node 创建一个符号链接(symbolic link),可以在运行时观察到 ls -lh /usr/local/bin/npm , 即 /usr/local/bin/node指向 /usr/local/opt/node@8/bin/node .

现在我不记得为什么我最初添加 /usr/local/opt/node@8/bin到路径。

关于node.js - Homebrew:在 node@8 旁边安装最新的 npm 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51780787/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com