我正在使用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上)是当最终用户尝试复制/粘贴文件名太长的文件夹时,他会收到以下错误:
例如是否可以告诉npm将依赖项安装在名为nm
的文件夹中
,这样问题就更有可能不会出现了。
答案 0 :(得分:3)
随着即将到来的npm 3,情况变得更好。之前我必须开发靠近驱动器的根文件夹(c:\ GH),但是npm 3的层次结构更平坦。在极少数情况下,路径名称可能很长。如果存在版本冲突,则会发生这种情况,并且npm必须在子文件夹而不是node_modules根目录中安装软件包。
无耻的插件:我写了关于这个问题的a blog post&溶液
答案 1 :(得分:2)
为了避免这个问题,我会尝试:
将路径映射到虚拟驱动器。如果它是网络共享的 文件夹,你可以使用“工具 - >地图网络驱动器”,如果没有,你可以使用 “subst”命令。更多信息: http://www.makeuseof.com/tag/how-to-map-a-local-windows-folder-to-a-drive-letter/
由于问题只是复制一组文件夹,为什么不试试 ROBOCOPY?它支持比本机更长的文件路径 Windows资源管理器。