我在一个没有互联网连接的系统(对于Windows)中为我的项目的所有客户端组件创建包时面临挑战。
我已经在系统中为Windows安装了NPM。我需要管理node_modules
并在系统中运行gulp命令来创建包。
由于框中没有互联网连接,我决定将node_modules
从我的本地框复制到没有互联网连接的框。
对于复制任务,我使用的是msbuild
脚本但不知何故它对我不起作用。此外,我发现当我尝试将node_modules
手册从一个文件夹复制到另一个文件夹时,我无法复制。
已安装的节点版本:v0.12.2 NPM版本:2.7.4
任何人都可以帮我提供任何工作样本来解决上述问题。
答案 0 :(得分:2)
我认为你的方法通常是合理的。你可以建立在互联网上连接电脑没问题!如果您愿意,可以使用usb棒复制文件。
以下是一些可能有助于解决问题的提示。
否则你需要运行gulp的本地目录安装。 e.g。
node node_modules\gulp\bin\gulp.js build
因为您无法npm install -g gulp
第3点也适用于其他全球npm_modules btw
如果您遇到长路径(> 256个字符),可能会导致复制问题
npm dedupe
删除重复项c:\proj
而不是c:\very\long\path\proj
或明确安装具有长路径的依赖项
e.g
npm install deepdep@1.2.4
然后从原始
修剪该文件夹 rm node_modules\package\node_modules\package_with_too_many_nested_folders
或安装最新的npm(v3.0或更高版本),一劳永逸地解决此问题
e.g。 npm install -g npm
将为您的包构建更平坦的层次结构。需要删除并重新安装所有软件包。
第5点是Windows上一个臭名昭着的问题,这在Linux上不是问题,因为路径可能非常长。 (除非你从Linux安装windows目录)
就我个人而言,我会直接寻找最新的npm版本,但是如果不可能的话,你有很多方法可以解决这个问题。