Quasar dev执行触发PSSecurityException,修改执行策略仍无效
解决Quasar CLI脚本未签名无法执行的问题
问题根源
PowerShell执行策略的优先级从高到低为:MachinePolicy > UserPolicy > Process > CurrentUser > LocalMachine。你的MachinePolicy设为AllSigned,这是最高优先级的策略,会强制要求所有运行的脚本必须经过数字签名,因此你修改其他低优先级的策略(比如CurrentUser、Process)完全无效,这就是报错的核心原因。
解决步骤
- 先确认当前所有执行策略的完整状态,执行:
Get-ExecutionPolicy -List - 若要永久解决,需以管理员身份运行PowerShell,修改MachinePolicy为更宽松的策略(比如
RemoteSigned,允许本地未签名脚本运行,仅要求远程脚本签名):Set-ExecutionPolicy RemoteSigned -Scope MachinePolicy -Force - 若只是临时运行Quasar,不想修改全局策略,可以直接在当前会话绕过执行限制:
powershell -ExecutionPolicy Bypass -Command "quasar dev" - 若怀疑Quasar脚本文件损坏,可重新安装CLI:
npm uninstall -g @quasar/cli npm install -g @quasar/cli
突发原因推测
大概率是以下情况之一:
- 系统更新后自动重置了PowerShell执行策略
- 公司域环境的组策略推送修改了MachinePolicy
- 安全软件(杀毒、EDR工具)自动加固了PowerShell执行限制
内容的提问来源于stack exchange,提问作者Gaetan L.
相关产品推荐
相关产品推荐

