纱线已安装但不起作用。命令被识别,但没有纱线命令做任何事情。 Windows Powershell

Posted

技术标签:

【中文标题】纱线已安装但不起作用。命令被识别,但没有纱线命令做任何事情。 Windows Powershell【英文标题】:Yarn is installed but does not work. Command is recognized but no yarn commands do anything. Windows Powershell 【发布时间】:2021-05-18 22:48:25 【问题描述】:

节点版本 11.13.0 npm 版本 6.9.0 我已经以多种方式安装了纱线,首先使用npm install -g yarn,然后我尝试了 .msi 安装程序,我还尝试从高架外壳使用巧克力进行安装。通常,当我尝试使用尚未安装的东西时,我会收到如下所示的消息:

  PS C:\Users\[me]> hello
hello : The term 'hello' is not recognized as the name of a cmdlet, function, script file, or operable program. Check
the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ hello
+ ~~~~~
    + CategoryInfo          : ObjectNotFound: (hello:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

但是,yarn 命令被识别但什么都不做。

PS C:\Users\[me]> yarn --version
PS C:\Users\[me]>

我已尝试更改 Path 环境变量以包含以下内容:

C:\Users\[me]\AppData\Local\Yarn\bin
C:\Program Files (x86)\Yarn
C:\Program Files (x86)\Yarn\bin

但这并没有改变任何东西。

【问题讨论】:

Get-Command yarn 的输出是什么?它是否指向正确的文件? @robdy 它在C:\Program Files (x86)\Nodist\bin\yarn.cmd 中生成一个yarn.cmd 文件。我想这可能是问题所在!如何将其更改为正确的目录? 我会从 $PATH 中删除 Nodist 文件夹,但我不知道您拥有的确切配置以及您想要实现的目标 :) 看起来没有成功。我尝试卸载 nodist 但事实证明这也是运行 node 和 npm 的地方。我在没有 nodist 的情况下安装了所有三个,但现在 npm 即使命令被识别,也什么都不做,而 yarn 仍然什么都不做。 【参考方案1】:

--version 不是有效开关,请改用yarn version - https://classic.yarnpkg.com/en/docs/cli/version。

【讨论】:

yarn version 也不做任何事情。纱线命令都不起作用。【参考方案2】:

您必须在环境路径中添加 %USERPROFILE%\AppData\Roaming\npm

1-开始菜单中的搜索环境 https://i.stack.imgur.com/y4zxD.jpg

2-Click 环境变量 https://i.stack.imgur.com/B59yD.jpg

3-编辑用户变量的路径 https://i.stack.imgur.com/Vz73p.jpg

4-将纱线的URI添加为新的 https://i.stack.imgur.com/Rq7xK.jpg

然后如果在vscode中不能使用yarn命令并得到错误yarn.ps1无法加载,因为在这个系统上禁用了运行脚本;以管理员身份打开 Powershell 并运行以下命令

Set-ExecutionPolicy 不受限制

【讨论】:

以上是关于纱线已安装但不起作用。命令被识别,但没有纱线命令做任何事情。 Windows Powershell的主要内容,如果未能解决你的问题,请参考以下文章

纱线错误:没有场景;必须至少有一个

我在全球范围内安装了纱线,但出现错误“zsh:找不到命令:纱线”

纱线安装命令错误没有这样的文件或目录:'安装'

如何使用终端升级纱线版本

安装纱线被拒绝

esbuild 上的纱线构建失败