2013-02-28 152 views
32

我有一個項目依賴於幾個第三方庫。npm install git repository without package.json

我的package.json樣子:

"dependencies": { 
    "vendor-name": "git://github.com/vendor/name.git#v1.1", 
    ... 
} 

這工作只要vendor-name庫包含package.json

如果有沒有這樣的文件,我得到:

npm ERR! path /var/folders/0l/temp-folder/package.json 
npm ERR! code ENOENT 

實際上,一個npm install git://github.com/vendor/name.git#v1.1不起作用了。

所以我的問題是: 有沒有一種方法來安裝(包括)沒有package.json git存儲庫(在dependencies)?

+2

我不認爲這是可能的。如果repo不是你的,請將它分叉,並將它自己的'package.json'文件添加到它。也許,即使提交拉請求。 – 2013-03-01 06:44:00

+0

我想過按照建議使用納帕,但我認爲您的解決方案更好。 – 2015-12-07 18:58:19

回答

39

是的,你可以用這個包是不可能的:https://npmjs.org/package/napa

+6

有關如何使用NPM 3.0執行此操作的任何更新? – 2015-06-27 00:06:10

+1

在此工作(現在)。 – 2016-08-05 13:57:56

8

什麼納帕做似乎被過度設計。我認爲只需在package.json中添加安裝腳本就足夠了。

"scripts": { 
    "install": "git clone https://github.com/vendor/name.git -b v1.1 node_modules/name" 
} 
+5

由於克隆可能會失敗,因此在重新運行時可能會導致問題。 – Danosaure 2017-03-22 02:16:40