2016-03-15 36 views
1

嗨,我正在開發一個在java中的sdk,在sdk中用戶將提供節點模塊名稱。有沒有辦法用java的所有依賴來下載這些npm包,而不強制最終用戶安裝npm?用於安裝npm模塊的Java插件

+0

讓用戶安裝NPM然後將其作爲Java命令調用它可能是最簡單的。只是想知道,爲什麼你反對讓他們安裝NPM? – user949300

回答

1

您可以從研究npm的註冊表api開始。你可以通過在這個末尾追加包名來尋找包,像這樣http://registry.npmjs.org/express,你只需要解析返回的json並尋找最新的tarball url(如果你正在尋找最新的發行版,你可以編寫插件到尋找特定的版本)。然後查找依賴關係條目併爲它們執行相同操作(訪問api並下載tarball)。您實際上可以在他們的文檔中找到更多信息。

+0

是的,我看着它,但問題是tarball只包含該模塊,它的依賴不存在於...如果我下載包A,則它的依賴關係B,C不存在於它中。 – SathishBabu

+0

是的,帶有tarball條目的json文件還包含它所需的依賴關係。你只需要爲它們中的每一個做相同的過程。 – paolord

+0

它不會以圓形下載結束嗎? – SathishBabu