由于嵌套节点依赖性,路径太长

时间:2014-02-12 14:42:04

标签: node.js path npm

我正在使用npm来安装依赖项。安装完毕后,我想与非技术人员分享我的项目,并且没有npm,所以我想在app中发布node_modules。

但是,因为节点嵌套了依赖项,所以它会创建一个路径很长的文件(217个字符)

node_modules\express\node_modules\connect\node_modules\multiparty\node_modules\readable-stream\node_modules\string_decoder\build\node_modules\cheerio\node_modules\htmlparser2\node_modules\domhandler\test\cases\04-unescaped_in_script.json

问题(在Windows上)是当最终用户尝试复制/粘贴文件名太长的文件夹时,他会收到以下错误:

enter image description here

例如是否可以告诉npm将依赖项安装在名为nm的文件夹中 ,这样问题就更有可能不会出现了。

2 个答案:

答案 0 :(得分:3)

随着即将到来的npm 3,情况变得更好。之前我必须开发靠近驱动器的根文件夹(c:\ GH),但是npm 3的层次结构更平坦。在极少数情况下,路径名称可能很长。如果存在版本冲突,则会发生这种情况,并且npm必须在子文件夹而不是node_modules根目录中安装软件包。

无耻的插件:我写了关于这个问题的a blog post&溶液

答案 1 :(得分:2)

为了避免这个问题,我会尝试:

  1. 将路径映射到虚拟驱动器。如果它是网络共享的     文件夹,你可以使用“工具 - >地图网络驱动器”,如果没有,你可以使用     “subst”命令。更多信息:     http://www.makeuseof.com/tag/how-to-map-a-local-windows-folder-to-a-drive-letter/

  2. 由于问题只是复制一组文件夹,为什么不试试         ROBOCOPY?它支持比本机更长的文件路径         Windows资源管理器。