今天在用HbuilderX运行项目的时候发现一个问题,已经安装nodejs了,我查看npm的版本的时候,`npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。 所在位置 行:1 字符: 1 所在位置 行:1 字符: 1
- npm -v
markdown
+ CategoryInfo : SecurityError: (:) [],PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess`
+
这样报错了, 经过排查,才知道这个错误是因为 PowerShell 的执行策略限制了脚本的运行。默认情况下,PowerShell 的执行策略可能设置为 Restricted
,这意味着不允许运行任何脚本。 可以通过更改 PowerShell 的执行策略来解决这个问题。以下是具体步骤:
-
**
打开 PowerShell 作为管理员**:
- 在开始菜单中搜索 "PowerShell"。
- 右键点击 "Windows PowerShell" 并选择 "以管理员身份运行"。
-
查看当前的执行策略:
sql
Get-ExecutionPolicy
-
更改执行策略:
-
如果你想允许所有用户在本地计算机上运行脚本,可以将其设置为
RemoteSigned
。这允许你运行本地创建的脚本,但需要数字签名才能运行从互联网下载的脚本。javascriptSet-ExecutionPolicy RemoteSigned
-
或者,如果你想更宽松地允许所有脚本运行(不推荐用于生产环境),可以将其设置为
Unrestricted
。javascriptSet-ExecutionPolicy Unrestricted
-
-
确认更改:
- 系统会提示你是否要更改执行策略。输入
Y
并按回车键确认。
- 系统会提示你是否要更改执行策略。输入
完成上述步骤后,你应该能够正常运行 npm
命令。
如果你仍然遇到问题,请确保你的 node.js
和 npm
已经正确安装并且路径配置正确。你可以通过以下命令检查它们的版本:
node -v
npm -v
这些命令应该返回相应的版本号,表明 node.js
和 npm
正常工作。