npm报错 : 无法加载文件 npm.ps1,因为在此系统上禁止运行脚本

问题描述:

在Windows系统下使用 PowerShell 执行npm命令时,出现以下错误:

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

分析原因:

这是由于Windows PowerShell 的执行策略(Execution Policy)限制导致的。PowerShell为了系统安全,默认设置为 Restricted 模式,该模式会:

  • 禁止运行任何PowerShell脚本文件(.ps1)
  • 只允许交互式命令执行

为什么npm会触发这个错误?

  • npm 在 Windows 环境下提供了 PowerShell 脚本版本(npm.ps1)
  • 当在 PowerShell 中执行 npm 命令时,系统会尝试加载这个脚本文件
  • 由于执行策略限制,PowerShell拒绝加载该脚本文件

解决办法:

步骤1:以管理员身份打开PowerShell

  • 右键点击开始菜单
  • 选择"Windows PowerShell (管理员)"

步骤2:查看当前执行策略

使用命令 Get-ExecutionPolicy 进行查看

bash 复制代码
Get-ExecutionPolicy

如果显示 Restricted,说明当前禁止脚本运行。

步骤3:设置执行策略为 RemoteSigned

bash 复制代码
Set-ExecutionPolicy RemoteSigned

系统会提示确认,输入"Y"并回车。

步骤4:验证设置

bash 复制代码
Get-ExecutionPolicy

现在应该显示 RemoteSigned

步骤5:重新执行 npm 命令

成功!

相关推荐
爱学习的程序媛1 小时前
《深入浅出Node.js》核心知识点梳理
javascript·node.js
q***71011 小时前
从零到上线:Node.js 项目的完整部署流程(包含 Docker 和 CICD)
docker·容器·node.js
HIT_Weston1 小时前
44、【Ubuntu】【Gitlab】拉出内网 Web 服务:http.server 分析(一)
前端·ubuntu·gitlab
最晚的py1 小时前
Node.js环境变量配置
node.js
u***45751 小时前
Node.JS 版本管理工具 Fnm 安装及配置(Windows)
windows·node.js
e***71672 小时前
Node.js v16 版本安装
node.js
n***4432 小时前
Node.js HTTP模块详解:创建服务器、响应请求与客户端请求
服务器·http·node.js
华仔啊2 小时前
Vue3 如何实现图片懒加载?其实一个 Intersection Observer 就搞定了
前端·vue.js
JamesGosling6662 小时前
深入理解内容安全策略(CSP):原理、作用与实践指南
前端·浏览器