2016-06-15 77 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