我有一个问题与npm创建的node_modules文件夹。
指定的路径、文件名或两者都太长。完全限定文件名必须小于260个字符,目录名必须小于248个字符。
一个解决方案是安装npm@3,因为它有——flat参数,该参数使文件夹变平。
现在我在VS2015中使用任务运行器浏览器。默认情况下,npm会安装不带"——flat"选项的模块。结果是我无法发布web项目,因为路径超过了限制(即使在项目文件中将node_modules文件夹添加到ExcludeFoldersFromDeployment属性),错误消息是:
"CollectFilesinFolder"任务意外失败
一个解决方案是手动调用npm install——flat,但我的同事会有同样的问题(我不是说从文件系统中删除文件夹:-/)。
是否有一种方法可以配置npm安装的参数,无论是通过配置Taks Runner Explorer还是在package.json中?
根据当前的NPM文档(v3.3.9), NPM install没有--flat
命令行选项。据我所知,NPM v3 总是在平面目录结构中安装模块(你可以通过执行命令行安装来判断)。
要确保Visual Studio在你的node/npm版本上运行命令,你需要:
- 安装那个版本的npm。例如:
- 自定义外部Web工具路径。例如,将
$(PATH)
移动到所有$(DevEnvDir)...
选项之上。
cd C:pathtonodejs && npm install npm@3
作为安全检查,打开交互式节点窗口并执行.npm version
。它应该输出一个属性为"npm"等于npm --version
的对象。
你现在可以在Visual Studio中使用npm @3来安装npm了。