解决问题:在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,可查看到版本(结果:成功解决了)

相关推荐
VidDown13 天前
VidDown 工具站:免费、本地优先的开发者工具箱
javascript·编辑器·音视频·视频编解码·视频
VidDown13 天前
显卡处理视频技术详解:从硬解码到 NVENC,GPU 如何让视频处理起飞?
javascript·编辑器·音视频·视频编解码·视频
夜猫逐梦13 天前
【UE基础】03.蓝图与编辑器工作流
编辑器·ue·蓝图·ue编辑器
VidDown13 天前
视频帧率技术详解:从 24fps 到 120fps,帧率如何影响你的观看体验?
网络·网络协议·编辑器·音视频·视频编解码·视频
爱就是恒久忍耐13 天前
VSCode里如何比较2个branch
ide·vscode·编辑器
意法半导体STM3213 天前
【官方原创】如何为STM32CubeMX2配置Visual Studio Code配置方案
vscode·stm32·单片机·嵌入式硬件·策略模式·stm32cubemx·嵌入式开发
bloglin9999913 天前
vscode中可视化的合并分支,在“合并编辑器中解析”中“与基线进行比较”是什么意思
ide·vscode·编辑器
天疆说13 天前
在 Ubuntu 的 VSCode 中配置 MATLAB
vscode·ubuntu·matlab
zyplayer-doc14 天前
企业知识库安全与权限管理完全指南:从加密到审计的六层防护
人工智能·安全·pdf·编辑器·创业创新
古德new14 天前
鸿蒙PC迁移:Photoflare Qt 图片编辑器鸿蒙PC适配全记录
qt·编辑器·harmonyos