npm : 无法加载文件 E:\ProgramFiles\Nodejs\npm.ps1,因为在此系统上禁止运行脚本。

这个错误是因为 Windows 系统的 PowerShell 执行策略 限制了脚本的运行。默认情况下,PowerShell 的执行策略是 Restricted,即禁止运行任何脚本。以下是解决该问题的步骤:


1. 检查当前执行策略

打开 PowerShell(管理员权限),运行以下命令查看当前执行策略:

powershell 复制代码
Get-ExecutionPolicy
  • 如果返回 Restricted,说明脚本运行被禁止。

2. 修改执行策略

为了允许运行脚本,可以将执行策略修改为 RemoteSignedUnrestricted

方法 1:临时修改执行策略

运行以下命令,临时修改执行策略(仅在当前会话中生效):

powershell 复制代码
Set-ExecutionPolicy RemoteSigned -Scope Process
方法 2:永久修改执行策略

运行以下命令,永久修改执行策略:

powershell 复制代码
Set-ExecutionPolicy RemoteSigned
  • RemoteSigned:允许运行本地脚本,但远程脚本需要签名。
  • Unrestricted:允许运行所有脚本(不推荐,存在安全风险)。

3. 验证修改

再次运行以下命令,检查执行策略是否已修改:

powershell 复制代码
Get-ExecutionPolicy
  • 如果返回 RemoteSigned,说明修改成功。

4. 重新运行 npm 命令

修改执行策略后,重新运行 npm run serve,应该可以正常执行。


5. 其他解决方案

如果不想修改执行策略,可以通过以下方式绕过限制:

  1. 使用 cmd 代替 PowerShell
    • 打开命令提示符(cmd),运行 npm run serve
  2. 直接运行脚本
    • 使用 node 直接运行脚本文件,例如:

      bash 复制代码
      node your-script.js

总结

  • 问题原因:PowerShell 的执行策略限制了脚本运行。
  • 解决方法
    • 修改执行策略为 RemoteSigned
    • 使用 cmd 代替 PowerShell
相关推荐
灵感__idea1 小时前
JavaScript高级程序设计(第5版):好的编程就是掌控感
前端·javascript·程序员
烛阴2 小时前
Mix
前端·webgl
代码续发2 小时前
前端组件梳理
前端
试图让你心动3 小时前
原生input添加删除图标类似vue里面移入显示删除[jquery]
前端·vue.js·jquery
陈不知代码3 小时前
uniapp创建vue3+ts+pinia+sass项目
前端·uni-app·sass
小王码农记3 小时前
sass中@mixin与 @include
前端·sass
陈琦鹏4 小时前
轻松管理 WebSocket 连接!easy-websocket-client
前端·vue.js·websocket
hui函数4 小时前
掌握JavaScript函数封装与作用域
前端·javascript
行板Andante4 小时前
前端设计中如何在鼠标悬浮时同步修改块内样式
前端
Carlos_sam5 小时前
Opnelayers:ol-wind之Field 类属性和方法详解
前端·javascript