根据Yarn项目维护者的说法,通过npm安装Yarn
违反了项目目标,可能会引起问题,并且通常比特定于平台的安装方法更糟糕。
建议的特定于平台的安装的优点:
- Yarn团队认为npm不安全且不可靠。在Yarn的“安装”页面上的“通过npm安装”部分中:
注意:
通常不建议通过npm安装Yarn。使用npm安装Yarn是不确定的,程序包未签名,唯一执行的完整性检查是基本SHA1哈希,这在安装系统范围的应用程序时会带来安全风险。由于这些原因,强烈建议您通过最适合您的操作系统的安装方法来安装Yarn。
通过npm运行Yarn是一个单独的程序包管理器实用程序,可能会导致边缘问题(请参阅问题2072)
通过系统软件包管理器进行安装可使Yarn与npm脱钩,从而使您无需npm即可运行Yarn
- 系统软件包管理器通常定期运行,以使Yarn保持更新
- 通过npm安装Yarn很慢
优点
npm install -g yarn:
- 快速简便(
npm install -g yarn
) - 可以在任何npm环境中执行(与平台无关)
- Node.js开发人员的熟悉范例和过程
- 可以轻松更新(
npm update -g yarn
)- 存在纱线更新命令(
yarn self-update
),但似乎已损坏
- 存在纱线更新命令(
- 不依赖系统软件包管理器
- 可以通过以下方式将不同版本的Yarn用于不同的项目或不同版本的Node.js:
nvm
推荐的安装的系统软件包管理器参数在引用Windows时往往会崩溃,因为Windows没有正式的软件包管理器(除非您将Windows
Update计数在内)。同样,Windows软件包管理器(例如Chocolatey)通常未配置为自动更新。
我不确定我是否完全同意Yarn团队对此的决定,但他们确实提出了一些合理的观点。Yarn项目仍处于起步阶段,如果要替换npm,那么鼓励npm作为其主要安装程序是没有意义的。
无论如何,通过npm进行的安装在大多数情况下现在似乎可以正常工作。
资料来源:
- npm vs系统软件包管理器说明
- 补充说明
- 对纱线的“ app”和“ npm package”目标的简短评论
- 有关如何使Windows Yarn保持最新状态的问题



