本文介绍: 三种方案解决:npm WARN config global `–global`, `–local` are deprecated. Use `–location=global` instead.告警、报错。
场景
更换电脑硬盘后,重新安装开发软件。当安装node后进行验证,执行npm命令告警:
PS C:Windowssystem32> npm install --g xxx
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
npm WARN logfile could not create logs-dir: Error: EPERM: operation not permitted, mkdir 'D:Developmentnodejsnode_cache_logs'
原因
1.--global
, --local
被弃用删除,要求改为使用--location=global
2.npm WARN logfile
告警则是因为对应目录没有权限,右键打开目录属性给与全部权限即可
解决方案
方案一
找到nodejs安装目录
编辑四个名为npm, npm.cmd, npx,npx.cmd的文件
在文件中替换prefix -g为prefix --location=global
管理员权限保存
方案二
这个警告官方在npm 8.12.1
中得到了修复,故可以升级安装npm
# 安装最新版
npm install -g npm@latest
# 安装指定版本
npm install -g npm@8.12.1
# 安装指定版本
npm install -g npm@8.12.1
方案三(重点)
# 修改策略
Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
npm install --global --production npm-windows-upgrade
npm-windows-upgrade 或 npm-windows-upgrade --npm-path "node安装路径"
# 恢复最初策略
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force
4.执行成功后选择npm版本,然后执行npm -v
命令测试,发现警告消失
PS C:Windowssystem32> Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
PS C:Windowssystem32> npm install --global --production npm-windows-upgrade
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
npm WARN config production Use `--omit=dev` instead.
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
changed 50 packages in 5s
PS C:Windowssystem32> npm-windows-upgrade
npm-windows-upgrade : 无法将“npm-windows-upgrade”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写
,如果包括路径,请确保路径正确,然后再试一次。
所在位置 行:1 字符: 1
+ npm-windows-upgrade
+ ~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (npm-windows-upgrade:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
PS D:Developmentnodejsnode_global> npm-windows-upgrade --npm-path "D:Developmentnodejs"
npm-windows-upgrade : 无法将“npm-windows-upgrade”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写
,如果包括路径,请确保路径正确,然后再试一次。
所在位置 行:1 字符: 1
+ npm-windows-upgrade --npm-path "D:Developmentnodejs"
+ ~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (npm-windows-upgrade:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
Suggestion [3,General]: 找不到命令 npm-windows-upgrade,但它确实存在于当前位置。默认情况下,Windows PowerShell 不会从当 前位置加载命令。如果信任此命令,请改为键入“.npm-windows-upgrade”。有关详细信息,请参阅 "get-help about_Command_Precedence"。
PS D:Developmentnodejsnode_global> ./npm-windows-upgrade --npm-path "D:Developmentnodejs"
npm-windows-upgrade v6.0.1
? Which version do you want to install? 8.15.0
Given path D:Developmentnodejs is a valid directory.
Upgrading npm... |
Upgrading npm (fallback method)...
Upgrade finished. Your new npm version is 8.15.0. Have a nice day!
PS D:Developmentnodejsnode_global> npm -v
8.15.0
PS D:Developmentnodejsnode_global> Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force
PS D:Developmentnodejsnode_global>
原文地址:https://blog.csdn.net/qq_38628046/article/details/126082907
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_19886.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。