纱线正在为我工作,直到我决定我需要多个版本的节点。 所以我卸载了纱线并安装了nvm,按照以下指导进行操作
然后,我使用msi安装程序成功重新安装纱线。 不幸的是, yarn global add [name]安装的软件包在一个看起来横跨所有nvm控制的节点版本的位置 ,但它们同样无法访问。 就是说,npm找不到纱线全球安装的东西。 或者,例如,在全球使用纱线安装gulp后,我发现gulp在命令行上不可用(并且它的cmd文件在c: program files nodejs中找不到)。
所以我卸载了纱msi。 然后npm i --global yarn build议在 npm i --global yarn重新安装纱线。 这最终导致纱线与当前nvm受控节点版本相关联。 优秀。
但是,当我再次尝试纱线来安装全局包时,我发现它们没有正确安装。 比如我跑了:
尝试使用node.js安装aglio时出错
nodejs child_process exec'java -version'
Node.js – 将数据缓冲到Ffmpeg
在生产中运行平均堆栈应用程序
如何在centos上安装凉亭7
nvm use 5.11.0 yarn global add jspm gulp karma karma-cli
软件包安装成功,但是当我从命令行尝试“gulp”时,它不可用。 另外,当我npm ls --global --depth=1我看到我安装的软件包无处可npm ls --global --depth=1 。 如果我尝试yarn global ls --depth=0它需要很长的时间才能告诉我,我的包(jspm,gulp,karma,karma-cli)实际上是安装的。
更糟的是,我后来决定做以下事情:
nvm use 7.3.0 //fresh node install...no packages installed npm i --global yarn yarn global ls
然后,yarn命令会显示与nvm use 5.11.0版本时全局安装的相同的软件包。 总之,纱线坚持某种全球安装位置(与nvm控制节点版本不同)。 我也不知道纱线保存这些全局包的文件位置,所以我不知道如何“卸载”我可以尝试。
总之,我不认为yarn和nvm是兼容的。 它是否正确?
版本信息
Windows 10 Pro,x64
nvm v1.1.3
纱线v0.21.3
节点5.11.0(由NVMselect)
节点7.8.0(由NVMselect)
更新
我发现问题1491可能包含我的答案。 我了解到:
全球安装的纱线包的位置故意与全球npm安装的包不同。
确实有一个纱线错误,它会阻止全局安装的软件包在命令行中可用(doh!)。 这打破了全球安装套件的目的。
Yarn在Windows上保存其数据的位置是%LocalAppData%Yarn
我想在我安装nvm之前,纱线工作的原因,只是我没有尝试使用安装全局包…因此还没有注意到这个错误。 总之,我认为nvm是好的。 然而,现在我觉得我正在浪费我的时间,使用npm i --global yarn方法来安装纱线,因为纱线只是简单地把所有的全球包裹放到一个地方。 而且,由于目前的错误,我应该用来安装全局包的唯一工具是npm本身。
什么是最好的node.js集群?
Node.js符号链接连接在Windows上被破坏?
如何在Linux上启用Node.jsencryption的AES-NI(硬件加速)?
Nginx.conf和Node.js设置场景
Aptana Studio 3.6.1真的需要Node.js吗? 为什么?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。