隐藏

未对文件 C:\Users\Administrator\AppData\Roamin g\npm\yarn.ps1 进行数字签名。

发布:2024/11/3 15:37:52作者:管理员 来源:本站 浏览次数:247

 执行这个命令时报错:yarn --registry=https://registry.npm.taobao.org


yarn : 无法加载文件 C:\Users\Administrator\AppData\Roaming\npm\yarn.ps1。未对文件 C:\Users\Administ

rator\AppData\Roaming\npm\yarn.ps1 进行数字签名。无法在当前系统上运行该脚本。有关运行脚本和设置执行

策略的详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies

所在位置 行:1 字符: 1

+ yarn --registry=https://registry.npm.taobao.org

+ ~~~~

   + CategoryInfo          : SecurityError: (:) [],PSSecurityException


   + FullyQualifiedErrorId : UnauthorizedAccess


这个错误信息是因为你的系统不允许执行未签名的 PowerShell 脚本。可以通过以下步骤来解决这个问题:


解决方法

以管理员身份运行 PowerShell:


在开始菜单中搜索“PowerShell”。

右键点击“Windows PowerShell”,选择“以管理员身份运行”。

检查当前执行策略: 在 PowerShell 中输入以下命令:


Get-ExecutionPolicy

这将显示当前的执行策略。如果当前策略是AllSigned ,AllSigned执行策略要求所有脚本都必须有有效的数字签名才能运行,这可能导致你在执行未签名的脚本时遇到问题;如果当前策略是 Restricted,这意味着不允许任何脚本运行。要解决这个问题,可以按照以下步骤将执行策略更改为允许运行脚本:


更改执行策略:


在管理员 PowerShell 窗口中输入以下命令:


Set-ExecutionPolicy RemoteSigned

或者,如果你希望允许所有脚本运行,可以使用:


Set-ExecutionPolicy Unrestricted

输入后,按 Y 确认更改。


确认更改


输入以下命令来确认执行策略已更改:


Get-ExecutionPolicy

应该显示 RemoteSigned。


再次运行 Yarn 命令:


yarn --registry=https://registry.npm.taobao.org

报错解释:


这个错误表明你在尝试运行名为 yarn.ps1 的PowerShell脚本时,系统遇到了数字签名验证问题。数字签名用于验证脚本的来源和完整性,以确保脚本是安全的且未被篡改。未通过签名验证通常意味着脚本不是从可信来源下载或者已被篡改。


解决方法:


确认脚本来源:确保你从可信来源下载了 yarn.ps1 文件。


启用脚本执行:在PowerShell中运行以下命令以启用未签名脚本的执行,但请注意这会增加安全风险。


Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted


如果你正在使用的是Windows系统,可以尝试以下步骤:


打开“控制面板” -> “管理工具” -> “组策略编辑器”。


导航到“用户配置” -> “管理模板” -> “系统” -> “脚本执行”。


找到“禁用数字签名策略”并将其设置为“已启用”。


重启计算机。


请注意,修改策略可能会带来安全风险,确保了解所做更改的后果。如果不熟悉这些步骤,建议寻求更专业的帮助。