node命令在PowerShell中冻结,在命令提示符中可正常运行
Node.js v16.16.0安装后PowerShell中
node命令冻结问题 问题详情
- 新手首次安装Node.js,从官网下载
node-v16.16.0-x64.msi安装包,安装时勾选了包含Chocolatey选项。 - 安装后异常:
node命令在PowerShell中无响应(冻结),但在命令提示符(CMD)中可正常执行。npm命令在两个终端均能运行,但都会弹出如下警告:npm WARN config global
--global,--localare deprecated. Use--location=globalinstead.
翻译:npm警告:全局配置中的--global、--local参数已被弃用,请改用--location=global。
PowerShell中node命令冻结的解决办法
1. 调整PowerShell执行策略
- 以管理员身份启动PowerShell
- 执行命令查看当前策略:
Get-ExecutionPolicy - 若结果为
Restricted,执行:Set-ExecutionPolicy RemoteSigned,按提示输入Y确认后重启PowerShell测试
2. 排查环境变量路径冲突
Chocolatey可能导致Node.js路径优先级异常:
- 在PowerShell中执行
$env:PATH,检查Node.js安装路径(通常为C:\Program Files\nodejs\)是否排在Chocolatey相关路径之前 - 若不是,打开系统属性-高级-环境变量,在
PATH中将Node.js路径移至Chocolatey路径上方,保存后重启终端
3. 重置PowerShell配置文件
- 关闭所有PowerShell窗口
- 打开文件资源管理器,进入
C:\Users\[你的用户名]\Documents\WindowsPowerShell,删除profile.ps1文件(若存在) - 重新打开PowerShell测试
node命令
4. 重新安装Node.js(不勾选Chocolatey)
若以上方法无效,尝试纯净安装:
- 卸载当前Node.js和Chocolatey
- 重新下载
node-v16.16.0-x64.msi,安装时取消勾选Chocolatey选项 - 安装完成后重启终端验证
npm弃用警告的快速修复
这个警告属于npm版本兼容问题,可通过以下方式消除:
- 执行命令修改配置:
npm config set location=global - 或手动编辑
C:\Users\[你的用户名]\.npmrc文件,将global=true替换为location=global
内容的提问来源于stack exchange,提问作者Robai
相关产品推荐
相关产品推荐

