pm WARN config global `--global` **instead问题解决

本文介绍了在npm8.11.0及更高版本中,由于`--global`和`--local`选项被弃用,如何更新npm和npm.cmd文件中的prefix设置,以避免安装全局模块时的警告。同时,提到了package.json中scripts的配置调整。

npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead问题解决

1:安装npm后执行npm -v
提示npm WARN config global --global, --local are deprecated. Use --location=global instead.

$npm -v

npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
8.11.0
问题出现在,以前版本npm的命令一般时XXX -g 但是随着版本更替,这个老方法被弃用了,这时

我们需要修改两个文件npm和npm.cmd

prefix -g   改为   prefix --location=global

npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.

===OK:
npm install express -g  改为  npm install express --location=global


D:\STCWORK\SOFTRUN\nvm\v17.9.1

修改路径:nodejs\npm和 
修改路径:nodejs\npm.cmd 

---npm:
line:23:
NPM_PREFIX=`"$NODE_EXE" "$NPM_CLI_JS" prefix -g`
修改为:
NPM_PREFIX=`"$NODE_EXE" "$NPM_CLI_JS" prefix --location=global`

---npm.cmd:
line:12

FOR /F "delims=" %%F IN ('CALL "%NODE_EXE%" "%NPM_CLI_JS%" prefix -g') DO (
修改为:
FOR /F "delims=" %%F IN ('CALL "%NODE_EXE%" "%NPM_CLI_JS%" prefix --location=global') DO (

注意:
2:npm install express -g
这样也会报错

启动:编译:

查看: 项目 package.json 里的 "scripts": {
    "dev": "set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
    "build:prod": "set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build",
    "build:stage": "vue-cli-service build --mode staging",
    "preview": "node build/index.js --preview",
    "lint": "eslint --ext .js,.vue src"
  },
  配置信息: 使用以下可启动 编译:
 npm run build:prod

在使用 `npm` 时,如果看到警告信息 `npm WARN config global --10ca1 deprecated: Use --location=global instead`,这表明当前使用的 `--global``-g` 参数已被弃用,建议改用 `--location=global` 来替代。 该警告通常出现在较新版本的 Node.js 和 npm 中,因为 npm 为了支持更灵活的安装位置管理,引入了 `--location` 参数来统一管理全局和本地安装行为。 ### 解决方法 1. **更新命令格式** 将原本使用 `-g``--global` 的命令替换为 `--location=global`,例如安装 `express````bash npm install --location=global express ``` 2. **配置全局安装路径(可选)** 如果你希望自定义全局安装路径,可继续使用 `npm config set prefix "路径"` 来设置全局模块的安装位置,例如: ```bash npm config set prefix "/usr/local/node-v12/node_global" ``` 确保该路径已添加到系统环境变量 `PATH` 中,以便全局命令可被识别。 3. **清除缓存(可选)** 若警告仍然存在,可以尝试清除 npm 缓存以确保没有残留配置影响: ```bash npm cache clean --force ``` 4. **检查 npm 版本** 使用以下命令查看当前 npm 版本: ```bash npm -v ``` 若版本较低,可考虑升级到最新稳定版本以获得更好的兼容性和支持: ```bash npm install -g npm@latest ``` ### 配置环境变量(适用于 macOS/Linux) 编辑环境变量配置文件(如 `/etc/profile``~/.bashrc``~/.zshrc`)并添加以下内容: ```bash export PATH=/usr/local/node-v12/node_global/bin:$PATH ``` 然后执行: ```bash source /etc/profile # 或者根据你编辑的文件执行 source ~/.bashrc ``` 这样可以确保全局安装的命令在终端中可直接使用。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值