如何使用 Yarn 安装许多全局包的列表

新手上路,请多包涵

yarn install -h 建议 -g (全局)选项是 DEPRECATED 。我应该如何表明我想要全局安装一堆软件包(来自 package.json / yarn.lock 文件)?

我看到的选项:

  • yarn global [command]lsadd 但没有 install add 仅适用于特定的包名称,如果我理解正确的话。我已经准备好我的 yarn.lock 文件,我不想在命令行上重复自己。
  • yarn global add 每个包一个一个。现在我的包列表将是必要的而不是声明性的。

具体来说,我想使用其中一个包中的一个可执行文件。

原文由 jleeothon 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 674
2 个回答

我应该如何表明我想要全局安装一堆包(来自 package.json / yarn.lock 文件)?

你不应该。 Yarn 不鼓励全局安装,而且在极少数情况下它是必要的,甚至是有帮助的。

文档中所述

对于绝大多数包来说,拥有全局依赖项被认为是一种不好的做法,因为它们是隐式的。最好在本地添加所有依赖项,以便它们是明确的,并且使用您的项目的任何其他人都可以获得相同的依赖项集。

如果您尝试使用具有 bin 的 CLI 工具,您可以在 ./node_modules/.bin 目录中访问这些工具。

但我真的,真的很想!

如果您 真的 不想听所提供的建议,请使用

yarn global add <package>

但是,不要指望在全球范围内轻松安装大量依赖项——这很难 按设计 完成,因为这不是一个好主意。


相反,Yarn 的预期流程是:

  • 在本地安装所有内容,因此每个项目都是隔离的
  • 在可能的情况下从 ./node_modules/.bin 调用二进制文件
  • 避免全局安装——它们很方便,但不是你应该依赖的。

原文由 Aurora0001 发布,翻译遵循 CC BY-SA 4.0 许可协议

只需输入

yarn global add nodejs

原文由 vijay 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题