当我做npm -v
时,我发现我仍然在使用5.6.0。并不断收到提示npm i npm
。
但是我已经完成sudo npm install npm@latest -g
并使用npm outdated -g --depth=0
进行了双重检查,以确定我的全局npm已经是最新的(6.0.0)。
如何解决此冲突? npm我使用的是最新的还是旧的?是因为我的全局链接不正确还是什么?
答案 0 :(得分:2)
检查您的/usr/local/lib
文件夹。我遇到了同样的问题,并且在这里有一个node_modules
文件夹。删除并重新运行[sudo] npm install npm@latest -g
后,它会显示并使用正确的版本。
答案 1 :(得分:1)
sudo npm install -g n
如果您想要最新的稳定版
sudo n stable
如果您想要最新版本
sudo n latest
然后重新启动计算机
答案 2 :(得分:1)
如果所有提到的方法都不能帮助您,我们可以做一个更好的解决方案:
您需要安装nvm
(Node Version Manager)
之后,请运行:
nvm install 14
列出您的版本以查看是否安装了版本
nvm ls
您将获得如下列表:
v10.2.0
v12.18.3
-> v14.10.0
system
default -> 14.10.0 (-> v14.10.0)
node -> stable (-> v14.10.0) (default)
stable -> 14.10 (-> v14.10.0) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/erbium (-> v12.18.3)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.22.0 (-> N/A)
lts/erbium -> v12.18.3
像这样切换默认版本:
nvm alias default 14.10.0
然后检查:
node -v
如果打印v14.10.0
,就可以摇摆了,如果没有:
nvm use 14
然后再次检查。
这需要像魅力一样工作,你会很高兴的。
答案 3 :(得分:0)
我认为您的问题是replecated并且已经有了答案。 首先,根据官方documentation,节点8.11.1(LTS)和节点10.0.0(最新版本)的NPM的LTS和当前版本为5.6.0。
否则,sudo npm install npm@latest -g
应在全球安装最新版本的NPM。
答案 4 :(得分:0)
如果您尝试了所有上述方法,如:- sudo npm install -g n sudo n稳定
或
sudo npm install npm @ latest -g 仍然是npm -v向您显示旧版本,一旦尝试关闭终端并打开一个新终端并进行检查。
答案 5 :(得分:0)
我可以100%保证这项功能有效。
我是从教node.js的人那里得到的。
尝试使用NVM(节点版本管理器)。在以下命令中执行命令:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
命令-v nvm
nvm安装节点
最终确认更新成功
答案 6 :(得分:0)
尝试关闭终端-再次打开终端后,它应该可以正常工作了。
* IvanD在对原始帖子的评论中写了此解决方案,我认为这是值得回答的帖子。
答案 7 :(得分:0)
我今天在Node安装程序node-v10.16.0-x64.msi上遇到了这个问题。即使安装了它,我也从npm -v获得了3.10的节点版本...并且我的react应用无法启动:(
似乎节点在APPDATA中的%AppData%\ Roaming \ npm中创建了一个文件夹 那里有一个旧的npm.exe,它位于用户级别的Windows路径中。用户级别的路径会覆盖新安装程序已添加其路径的系统级别的路径。用户覆盖导致找不到新的npm。解决方案:Shift-Delete%AppData%\ Roaming \ npm! :D删除并重新安装node-v10.16.0-x64.msi
现在npm -v给出6.9.0!
答案 8 :(得分:0)
在主目录中搜索node_modules文件夹,对其进行重命名或删除,然后重试。
答案 9 :(得分:0)
首先从“控制面板” \“所有控制面板” \“程序和功能”中卸载已安装的nodejs。
从Program Files(x86)文件夹中删除nodejs文件夹。
现在安装新版本并检查一次。
答案 10 :(得分:0)
尽管这是一个古老的问题,答案可能无关紧要,但是我很多时候都陷入了这种困境,但有时重启服务器并不是解决方案,因为其他过程将会生效。因此,您无需真正重启服务器就可以刷新终端,为此,您可以运行exec bash
,这肯定会有所帮助。
答案 11 :(得分:0)
我今天也遇到同样的错误。更新的npm版本无法反映
这就是我的解决方法。
许多帖子建议使用命令npm cache clean --f。但是,它对我没有用。因此,我从位置C:\ Users \ SearchYourUserName \ AppData \ Roaming
删除了“ npm”和“ npm-cache”文件夹卸载现有节点。
重新安装的节点版本v10.x.x。我从https://nodejs.org/dist/latest-v10.x/下载了node-v10.22.1-x64.msi文件并安装了它。
然后检查npm版本。它奏效了。
答案 12 :(得分:0)
我发现此命令行对我有用。
正确地从版本12.18
更新到最新版本15.2
。
我希望这是有用的:
nvm install node --reinstall-packages-from=node
答案 13 :(得分:0)
实际上,这可能是由于您使用 yarn
安装软件包的错误导致的,例如:
// update the version number in package.json then
yarn install
并尝试使用 npm
来运行脚本
npm run start
其实我犯了这个错误。
因此,请确保使用 yarn
或 npm
,但不能同时使用。
答案 14 :(得分:0)
我遇到了类似的问题。我在 ubuntu 18 上安装了节点 v14.15.4,但是当我使用 node -v
时它显示 v11.0.0。
要使用 nvm 检查系统上可用的所有节点版本,请使用
nvm ls
要将新安装的节点版本设置为默认,使用
nvm alias default <version>
然后,关闭终端并打开一个新终端来检查节点版本。
答案 15 :(得分:0)
问题总结
npm -v # 6.xx
npm install npm@latest -g
npm -v # still the same, but should be 7.xx
解决方案基于 fypnlp 的回答。
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
终端现在想要配置一些我的 Mac 上还没有的 ~/.zshrc
文件。所以让我们创建它
nano ~/.zshrc
并粘贴
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
现在重启终端并运行
command -v nvm # should return "nvm"
nvm install node
npm -v # now it’s 7.xx yay!