欢迎光临
我们一直在努力

【前端】npm : 无法加载文件 C:\\Develop\\nodejs\\npm.ps1,因为在此系统上禁止运行脚本

博主介绍:✌全网粉丝24W+,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌

技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物联网、机器学习等设计与开发。

感兴趣的可以先关注收藏起来,在工作中、生活上等遇到相关问题都可以给我留言咨询,希望帮助更多的人。

这里写目录标题

  • 一、报错原因解析
  • 二、解决方法
    • 2.1 方案 1:临时修改当前 PowerShell 会话(仅当前窗口生效)
    • 2.2 方案 2:永久修改用户级执行策略(推荐,无需管理员权限)
    • 2.3 方案 3:直接用 cmd 命令提示符(零配置)
  • 三、补充验证:环境变量是否真的没问题?
  • 四、为什么不建议直接关闭所有限制?
  • 五、额外排查:如果改完策略还是报错

一、报错原因解析

遇到的这个报错,根本原因不是环境变量配置错误,而是 PowerShell 的「执行策略」阻止了 npm 脚本运行,和 Path 环境变量配置无关。

Windows PowerShell 默认的执行策略是 Restricted,它会阻止所有 .ps1 脚本的运行,而 npm 在 PowerShell 中本质上是调用了 npm.ps1 脚本,因此被拦截了。你的环境变量 C:\\Develop\\nodejs\\ 配置是正确的,所以在 cmd 命令提示符里执行 npm –version 大概率是正常的,只有 PowerShell 会报这个错。

二、解决方法

2.1 方案 1:临时修改当前 PowerShell 会话(仅当前窗口生效)

  • 以管理员身份打开 PowerShell
  • 执行命令:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

  • 输入 A 或 Y 确认更改
  • 关闭当前 PowerShell,重新打开,再执行 npm –version 即可

2.2 方案 2:永久修改用户级执行策略(推荐,无需管理员权限)

  • 打开普通用户权限的 PowerShell
  • 执行命令:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

  • 输入 A 或 Y 确认更改
  • 关闭 PowerShell,重新打开,再执行 npm –version

2.3 方案 3:直接用 cmd 命令提示符(零配置)

  • 打开 cmd(不是 PowerShell),直接执行 npm –version,因为 cmd 不受 PowerShell 执行策略限制,直接调用 npm.cmd 就能运行。

三、补充验证:环境变量是否真的没问题?

我的 Path 里已经配置了 C:\\Develop\\nodejs\\,我们可以验证一下: 打开 cmd 执行:

where npm

正常会输出 C:\\Develop\\nodejs\\npm.cmd,说明环境变量是生效的。 再执行 node -v、npm -v,都能正常输出版本号,就说明环境变量配置完全没问题。

四、为什么不建议直接关闭所有限制?

网上有些方案会让你设置 Bypass 或 Unrestricted,这会降低系统安全性,而 RemoteSigned 是一个安全的折中方案:

  • 本地编写的脚本可以运行
  • 从网络下载的脚本(比如恶意脚本)必须有数字签名才能运行
  • 完全不影响 npm、yarn 这类本地脚本的运行

五、额外排查:如果改完策略还是报错

如果修改执行策略后,依然提示找不到 npm:

检查环境变量 C:\\Develop\\nodejs\\ 是否在 Path 里

检查是否重启了 PowerShell(环境变量修改后必须重启终端才会生效)

检查 C:\\Develop\\nodejs\\ 目录下是否存在 npm.cmd、node.exe 文件

检查用户变量和系统变量里的 Path 是否都配置了(只配置用户变量也可以,但建议都配置)

好了,今天分享到这里。希望你喜欢这次的探索之旅!不要忘记 “点赞” 和 “关注” 哦,我们下次见!🎈

本文完结!

祝各位大佬和小伙伴身体健康,万事如意,发财暴富,扫下方二维码与我一起交流!!!在这里插入图片描述

赞(0)
未经允许不得转载:171主机测评 » 【前端】npm : 无法加载文件 C:\\Develop\\nodejs\\npm.ps1,因为在此系统上禁止运行脚本
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址