解决问题:在cmd中能查看到pnpm版本,在vscode终端中却报错

在vscode中

  1. 安装pnpm,成功:npm install -g pnpm
  2. 执行 pnpm -v,发现报错(power shell模式下权限限制,默认执行策略阻止脚本运行)
  3. 执行 where pnpm,没有输出(说明pnpm不在PATH里,需要重新安装或者手动添加路径)

在cmd中,一切正常


以下是排查过程和解决方法:

1、检查vscode终端的shell类型

默认使用的终端可能是power shell / git bash(我的是powershell),而不是cmd,path环境变量可能不同

在vscode终端运行 env:Path //power shell 或者 echo PATH //git bash

在cmd运行 echo %PATH%

对比PATH,查看pnpm的路径是否缺失(结果:不缺失)

解决方法一:切换shell类型

按 ctrl + shift + P,输入 Terminal:Select Default Profile

选择Command Prompt(不是powershell或git bash)

输入exit关闭并重新打开终端(结果:成功解决了)

cmd是Windows原生终端,环境变量path直接继承自系统变量,如果 pnpm 是通过 npm install -g pnpm 安装的,通常能在 CMD 中直接运行(因为 npm 的全局路径默认在系统 PATH

解决方法二: 解决power shell类型的权限限制

如果不想切换终端类型,还是要power shell,可以

输入Get-ExecutionPolicy -List 命令,查看当前用户的执行策略

修改执行策略:将当前用户的执行策略修改为 RemoteSigned,允许运行本地脚本

javascript 复制代码
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

验证:执行pnpm -v,可查看到版本(结果:成功解决了)

相关推荐
山峰哥6 天前
吃透 SQL 优化:告别慢查询,解锁数据库高性能
服务器·数据库·sql·oracle·性能优化·编辑器
holeer6 天前
【V1.0】Typora 中的 HTML 支持|软件文档自翻译
前端·编辑器·html·typora·web·markdown·文档
硬汉嵌入式6 天前
Vim 9.2版本正式发布
编辑器·vim
Hello World . .6 天前
Linux:线程间通信
linux·开发语言·vscode
被制作时长两年半的个人练习生6 天前
claude code for vscode 配置 qwen3.5
ide·vscode·claude code·qwen3.5
圣心6 天前
Visual Studio Code 中的 AI 智能操作
ide·人工智能·vscode
吹牛不交税6 天前
关于vscode左侧资源管理器目录层级疑似异常的问题
ide·vscode·编辑器
嵌入小生0076 天前
线程间通信---嵌入式(Linux)
linux·c语言·vscode·嵌入式·互斥锁·线程间通信·信号量
琛説6 天前
彻底解决 Codex / Copilot 修改中文乱码【含自动化解决方案】
vscode·copilot·codex
学嵌入式的小杨同学6 天前
嵌入式硬件开发入门:PCB 设计核心流程 + 基础元器件实战指南
vscode·后端·嵌入式硬件·架构·vim·智能硬件·pcb工艺