当前位置: 首页 > news >正文

关于在vscode终端不能执行npm

文章目录

  • 一、问题描述
  • 二、解决策略
    • 方法一:使用管理员权限
    • 方法二:验证环境变量
    • 方法三:临时添加环境变量(不推荐)
  • 三、小结

一、问题描述


在vscode里不能执行npm,但是在cmd命令行界面可以成功执行。

在vscode终端里执行:

在命令行里执行:

二、解决策略


解决思路:出现这种情况,通常是因为环境变量未正确继承或终端配置不一致。

方法一:使用管理员权限

使用管理员权限重新启动vscode,尝试运行npm,可以发现运行成功。

再次使用普通权限执行,发现还是无法使用:

出现这种情况,这是因为以管理员身份启动 VS Code 时,终端会直接继承系统级环境变量(包括 Node.js 和 npm 的安装路径),而普通权限可能因系统限制无法正确加载这些路径。

如果每次都选择管理员权限打开,会有点麻烦,可以设置为每次启动vscode时都使用管理员权限:右键vscode->属性->兼容性->更改所有用户的设置,勾选以管理员身份运行此程序。
在这里插入图片描述

方法二:验证环境变量


验证环境变量:$env:Path -split ';' | Select-String 'nodejs'

可以发现环境变量指向了残留的安装目录,说明node没有卸载干净,删除掉相关文件和环境变量

输入npm list -g --depth 0,发现npm全局路径被指向了一个不存在或权限受限的目录

修改全局路径配置

# 检查npm全局路径配置
# 可以发现指向的目录为残留目录
npm config get prefix# 修复全局路径配置
npm config set prefix 'D:\AppGallery\Software\nodejs'# 验证
npm config get prefix

同样验证全局缓存地址

npm config get cache
npm config set cache 'D:\AppGallery\Software\nodejs'
npm config get cache

Windows 系统在修改环境变量(尤其是系统级变量)后,需要重启所有应用程序(包括资源管理器)或重启系统才能生效。

最后重启电脑就可以了

方法三:临时添加环境变量(不推荐)


可以直接添加环境变量(不推荐),每次执行都需要加上
$env:Path += ";D:\AppGallery\Software\nodejs"

三、小结

总体来说,因为之前安装过node,在安装nvm时卸载node卸载的不干净,全局路径配置和缓存配置都没有弄好,导致出现了许多问题

相关文章:

  • React 组件prop添加类型
  • 【数据结构】String字符串的存储
  • React memo
  • C++八股--three day --设计模式之单例和工厂
  • 【数据结构】励志大厂版·初阶(复习+刷题):栈与队列
  • 系统架构设计师:设计模式——结构型设计模式
  • MCP智能体意图识别与工具路由:让AI自主决策调用链路
  • Oracle无法正常OPEN(三)
  • Webug4.0靶场通关笔记13- 第22关越权修改密码
  • 【Linux网络编程】http协议的状态码,常见请求方法以及cookie-session
  • AE脚本 关键帧缓入缓出曲线调节工具 Flow v1.5.0 Win/Mac
  • AI 生成内容的版权困境:法律、技术与伦理的三重挑战
  • 使用 Java 实现一个简单且高效的任务调度框架
  • Laravel Octane 项目加速与静态资源优化指南
  • Lebesgue测度和积分理论发展概观
  • 初学python的我开始Leetcode题8-3
  • 使用QtCreator创建项目(3)
  • C++异常处理
  • python多线程输入字符和写入文件
  • Centos7.9 安装mysql5.7
  • AI世界的年轻人|与总书记交流过的“00后”,渴望紧握时代赋予的接力棒
  • 五一去哪玩?“时代交响”音乐会解锁艺术假期
  • 神十九都带回了哪些实验样品?果蝇等生命类样品已交付科学家
  • “85后”潘欢欢已任河南中豫融资担保有限公司总经理
  • 日韩 “打头阵”与美国贸易谈判,汽车、半导体产业忧虑重重
  • 王庆成:儒家、墨家和洪秀全的“上帝”