如何解决这个问题?
当我在命令提示符上尝试安装或检查任何内容时,Node.js 报出以下错误:
npm WARN config global
--global
、--local
已被弃用。请使用--location=global
对于这种情况,我该怎么办?由于我对 Node.js 的了解很少,如果有人有任何解决方案,请帮助我。
当我在命令提示符上尝试安装或检查任何内容时,Node.js 报出以下错误:
npm WARN config global
--global
、--local
已被弃用。请使用--location=global
对于这种情况,我该怎么办?由于我对 Node.js 的了解很少,如果有人有任何解决方案,请帮助我。
我解决这个问题的方法:
前往 C:\Program Files\nodejs
编辑4个文件 npm、npm.cmd、npx 和 npx.cmd
用 VS Code 打开这些文件
将所有四个文件中的前缀 -g 替换为前缀 --location=global
保存所有更改(如果需要以管理员身份保存)
完成!
我从你的截图中看到你正在使用npm版本8.11.0。 我认为你看到的错误是该版本的问题,而且在npm版本8.12.1上已经修复。
你可以尝试将npm更新到最新版本吗? 这应该可以解决警告。
npm已经解决了这个问题,你只需要更新npm版本:
npm i -g npm@latest
我不喜欢那些涉及编辑NPM源脚本(npm.cmd)的答案。
运行npm --version
时,由于我没有使用-g
选项,所以不应该收到警告。
npm --version
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
8.11.0
这是使用 node 版本 16.15.1 的情况。
于是我搜索了解决方案,并采用了使用 node v18.6.0 以及 npm v8.13.2
我使用了以下命令:
nvm install 18.6.0
nvm use 18.6.0
node -v && npm -v
v18.6.0
8.13.2
我感兴趣的事情:
这个问题的根本原因是什么?
这个警告从哪个版本的npm开始出现。
我正在使用nvm
(技术上是nvm for windows),所以我应该能够切换到一个能够正常工作的node/npm版本。
我搜索了一个关于这个问题根本原因的答案,并从youtube视频中了解到:
npm版本8.11.0有这个问题(警告)。请参见npm的github问题中的错误。注意:我从未找到引入该警告的确切提交记录。
npm版本8.13.1通过删除废弃的警告来修复该问题。
所以,我需要找到要安装的包括npm 8.13.1
或更高版本的nvm
版本。我找到了https://nodejs.org/de/download/releases/,该网站显示Node.js v18.6.0
使用npm v8.13.2
所以我安装了那个版本的node(使用nvm),这解决了问题(无需编辑任何npm.cmd
、npx.cmd
等文件)。
我使用的命令是:
nvm install 18.6.0
nvm use 18.6.0
node -v && npm -v
v18.6.0
8.13.2
npm -v
命令时,不再收到警告。我认为你的Node.js命令提示符正在向你抛出这个错误,不用担心,我会解决这个错误 ► Node.js CMD提示符错误
首先打开C盘并浏览您的程序文件,然后打开node js文件夹。
请看这张图片。这张图片告诉你很多► Node.js文件夹
现在,您必须以管理员身份打开vs code或任何代码编辑器 ► 在这张图片中,我解释了您需要编辑的两个文件
好的,现在将npm文件的第23行前缀-g更改为前缀--location=global
查看此图像,它可以帮助您理解 ► 如何更改npm前缀
现在,您必须更改另一个npm.cmd文件前缀
在您的代码编辑器中打开npm.cmd文件并将第12行prefix-g更改为prefix --location=global
此图像说明如何执行此操作 ► 更改npm.cmd
首先,在您的代码编辑器中打开npx文件 ► 选择这两个文件
其次,现在只需使用npx文件进行编辑,如下所示 ► npx文件前缀设置
第三,现在开始编辑npx.cmd文件,如下所示 ► npx cmd前缀设置
请问如何为Mac修复这个错误:npm WARN config global --global, --local已被弃用。请改用--location=global。
npm update -g npm
失败了,出现了需要修复的错误。也许我们可以使用yarn
(或nvm-windows
)来更新它? - YakovL