npm开关如何解决Windowspath长度问题
在Windows上NPM由于依赖关系的深层嵌套而存在问题。 为了解决这个问题,朋友build议使用下面的命令
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."
任何人都可以用简单的语言解释这个标志对允许安装依赖性的影响,通常会导致深层次的path问题?
任何人都可以用简单的语言解释这个标志对允许安装依赖性的影响,通常会导致深层次的path问题?
当然。 在npm
发布的许多软件包既可以用作命令行工具,也可以以编程方式使用。 例如, jslint
包发布了一个用于linting文件的命令行工具和一个可以被require
的API,所以你可以编写使用jslint
在创build进入bin
目录的文件时,深层path问题通常变得可见,以供命令行使用。 深层path通常不会影响以编程方式使用require
包。
因此,对于一个包的“常规”依赖关系,省略bin链接通常是无害的,因为这些依赖关系被require
所消耗。
对于全局安装的“dev”依赖项或软件包,通常需要保留bin链接,因为这些软件包更有可能被用作命令行工具。
顺便提一句,如果你还没有更新,你应该更新到最新的npm
– 在本文中,最新版本是2.1.16,在Windows上更新npm
的指南在这里: https : //github.com/npm/npm/wiki/故障排除#升级式窗口