2016-06-15 266 views
1

我熟悉Python的包管理器pip。 Pip可以指定“never make any network calls”,所有软件包和依赖项都应该从本地目录中获取“。npm只从本地安装包安装

与npm有点类似吗?

我想要一个更轻量级的构建过程,并且希望所有节点包都使用.tgz文件或类似文件从本地文件夹安装。

回答

1

如果有问题的文件夹将被用作各种各样的包库,我觉得应该npm link被链接将在~/<project-dir>/node_modules/<pkg>反映后做的工作

cd ~/<local-packages-dir>/<pkg> 
npm link 

cd ~/<project-dir> 
npm link <pkg> // installs package to ~/<project-dir>/node_modules/<pkg> 

~/<local-packages-dir>/<pkg>所做的任何更改。


另外要注意,npm install将安装一个tar文件或文件夹直接

npm install <folder>:

安装是坐在一个文件夹中的文件系统中的包。

npm install <tarball file>:

安装是坐在文件系统中的包。注意:如果您只想将开发目录链接到您的npm根目录,则可以使用npm link更简单地完成此操作。

例子:

 npm install ./package.tgz 
+0

OK我明白了。 npm安装文件夹/ tarball'处理依赖关系如何? – codeape

+0

@codeape处理依赖关系是什么意思?它应该像对待其他NPM软件包一样对待它们,它会尝试将它们安装在顶层,除非你的'package.json'中的依赖有冲突,那么它会在依赖包的文件夹中安装这个依赖, node_modules'。 – peteb

+1

我的意思是:将'npm install folder/tarball''试图从互联网下载依赖项? – codeape