在Windows上,NPM由于其依赖项的深层嵌套而存在问题。为了解决这个问题,朋友提出了以下命令
npm install <dep> -g --no-bin-link
手册页说明了这个命令
The --no-bin-links argument will prevent npm from creating symlinks for any binaries the package might contain."
有人能用简单的语言解释这个标志对允许安装依赖项的影响,这通常会导致深层路径问题吗?
答案 0 :(得分:2)
有人能用简单的语言解释这个标志对允许安装依赖项的影响,这通常会导致深层路径问题吗?
不确定。在npm
上发布的许多软件包既可以用作命令行工具,也可以用于编程。例如,jslint
包发布了用于linting文件的命令行工具和可以require
d的API,因此您可以编写使用jslint
的代码
在创建进入bin
目录的文件时,深层路径问题通常会变得可见,以供命令行使用。深度路径通常不会影响以require
编程方式使用的包。
所以&#34;常规&#34;包的依赖关系,省略bin链接通常是无害的,因为这些依赖关系是require
消耗的。
对于&#34; dev&#34;全局安装的依赖项或包,通常需要保留bin链接,因为这些包更有可能用作命令行工具。
顺便提一下,如果您还没有更新,请更新到最新版本npm
- 撰写本文时最新版本为2.1.16,并在Windows上更新npm
指南:{ {3}}