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

解决 pnpm dev 报错:系统禁止运行脚本的问题

概述

在使用pnpm dev命令启动项目时,很多开发者会遇到 PowerShell 拦截脚本运行的报错,本文将详细解析问题原因,并提供多种可行的解决方法。

一、问题现象

执行pnpm dev命令后,终端抛出如下错误:

pnpm : 无法加载文件 C:\Users\flybird\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。 所在位置 行:1 字符: 1 + pnpm dev + ~~~~ + CategoryInfo : SecurityError: (:) [],PSSecurityException + FullyQualifiedErrorId : UnauthorizedAccess

二、问题原因

该错误的核心是Windows PowerShell 的执行策略限制。PowerShell 为了系统安全,默认会限制脚本的运行权限,防止恶意脚本执行。而pnpm的启动依赖.ps1脚本文件,当执行策略为严格模式时,脚本就会被直接拦截。

三、解决方法

方法 1:临时解除当前会话限制(推荐,仅本次生效)

此方法仅对当前打开的 PowerShell 窗口生效,关闭窗口后权限自动恢复,兼顾安全性和便捷性。

1、以普通用户身份打开 PowerShell(无需管理员权限)。

2、执行以下命令,将当前用户的执行策略设置为RemoteSigned

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

3、终端弹出确认提示时,输入Y并按下回车键。

4、重新执行pnpm dev命令,即可正常启动项目。

方法 2:永久解除限制(需管理员权限)

如果需要长期使用pnpm,不想每次都配置权限,可以选择此方法,全局解除本地机器的脚本运行限制。

1、右键点击 PowerShell,选择以管理员身份运行

2、执行以下命令,设置本地机器的执行策略:

Set-ExecutionPolicy RemoteSigned -Scope LocalMachine

3、输入Y确认策略修改。

4、关闭当前 PowerShell 窗口,重新打开后执行pnpm dev即可。

方法 3:绕过 PowerShell,使用 CMD 终端

如果不想修改 PowerShell 执行策略,也可以换用 Windows 自带的 CMD 命令提示符,CMD 不受 PowerShell 执行策略的约束。

  1. 按下Win + R,输入cmd并回车,打开命令提示符。
  2. 在 CMD 中切换到项目根目录,直接执行pnpm dev命令即可。

四、补充说明

1、关于RemoteSigned策略该策略是兼顾安全与实用的选择,它允许运行本地创建的脚本(如 pnpm 的.ps1文件),但要求远程下载的脚本必须带有数字签名,能有效防范恶意脚本。

2、检查 pnpm 是否安装成功若修改执行策略后仍报错,可能是 pnpm 未正确安装,可执行以下命令重新全局安装:

npm install -g pnpm

3、恢复默认严格策略(可选)如果后续担心安全风险,想要恢复 PowerShell 的默认限制,可执行以下命令:

Set-ExecutionPolicy Restricted -Scope CurrentUser
http://www.cnnetsun.cn/news/82981.html

相关文章:

  • 照明系统设计
  • GPT-5.2 震撼发布:知识型工作超越人类专家的 AI 生产力革命!
  • 这些CTF,不仅学技术,还有巨额奖金!
  • 5个必学技巧!让你的点云可视化性能提升200%
  • 轻量级图表库uPlot完全指南:解锁高性能可视化新境界
  • 35、本地化与国际化文本函数详解
  • AdGuard Home配置优化实战指南:从新手到专家的5个关键步骤
  • 3步上手FLAN-T5 XL:从零开始掌握强大语言模型
  • 5分钟快速上手:awesome-godot项目带你玩转游戏开发
  • 深入Linux实时调度:5个关键机制彻底改变你的应用响应速度
  • MATLAB中实现图像超分辨率
  • Wechaty v1.20.2深度解析:智能对话机器人的企业级实践指南
  • Moonlight安卓串流终极指南:手机畅玩PC游戏的完整教程
  • 强化学习第六课 —— SAC:熵驱动的更智能探索
  • VeraCrypt加密存储实战:5步构建企业级数据安全防线
  • 9 个专科生开题演讲稿工具,AI降AI率软件推荐
  • Flutter Dynamic Widget 终极指南:用JSON构建动态UI的完整教程
  • MacBook 那些“偷偷摸摸”的隐私设置|2026 你现在就该改(真的)
  • 9个降AI率工具推荐!专科生开题报告必备
  • 终极解决方案:5步彻底攻克技术项目软依赖管理难题
  • Orleans告警革命:5大智能策略终结运维疲劳
  • 西安最新 955 公司名单
  • 微信不小心违规被封,好友辅助验证流程怎样?
  • 2024 FRC机器人比赛元素检测:游戏部件、防撞条、April标签与场地识别指南
  • 这款小工具,彻底治好了我的Mac文件管理焦虑
  • 智能助手性能评估:5大关键维度与实战指南
  • 从零开始搭建个人AI助手:Anything-LLM + Ollama下载配置全记录
  • 大模型内存优化技术:从碎片化到高效管理,性能提升45%的实战指南
  • 上海、北京、深圳跻身全球GDP前十城市;奥动新能源向港交所递交上市申请 | 美通社一周热点简体中文稿
  • 前端工程化实践:打包工具的选择与思考