2016-09-24 152 views
0

如何在我的本地項目中安裝依賴項/庫?如何在Maven的本地項目中安裝依賴項?

因爲現在我看到我的所有依賴得到安裝到:

C:\Users\yomac_000\.m2\repository

隨着NPM(依賴/庫安裝程序一樣的Maven但後來的Node.js)我可以做下面的命令來安裝庫到我的項目:

npm install <library_name>

如果我做的:

npm install -g <library_name>

然後,將庫安裝在C:\ somepath中。

回答

1

.m2/repository文件夾被稱爲本地存儲庫。所有依賴關係都被下載到這個文件夾中,所以你的項目可以共享它們。如果你想爲你的項目「安裝」依賴項,創建pom.xml並設置合適的打包類型(例如,針對Web應用程序的war)和範圍。這樣可以在您的WEB-INF/lib文件夾中訪問依賴關係。

如果您確實需要更改本地存儲庫的路徑,可以通過編輯maven配置來完成。請參閱this page以獲取有關Maven配置的信息。


一般信息有關pom.xml文件見https://maven.apache.org/pom.html

有關maven使用的依賴關係機制的詳細信息,請參閱https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html。這裏還描述了可用的範圍。

+0

如果我用'/path/to/local/repo/'更改本地存儲庫的路徑。然後,'項目A'和'項目B'仍然將它們的庫安裝在新更改的路徑中。那麼,如何管理'項目A'在項目A'中安裝其依賴關係? – superkytoz

+0

我不確定是否有這種選項。 Maven不會這樣工作。它使你的項目分享依賴。然後,當你建立一個項目時,它將依賴與項目一起打包。 I. e。你不需要關心本地存儲庫的位置,只需在pom中定義依賴關係,maven就會關心其餘部分。請參閱我在答案中提到的鏈接。 –

+0

是的,我知道,但是如果'項目A'使用名爲'testLibrary 1.0'的庫和'項目B'使用名爲'testLibrary 2.0'的庫,會發生什麼?然後,我假設Maven將刪除'testLibrary 1.0'並使用'testLibrary 2.0'更新它。這意味着我無法運行'項目A'。 – superkytoz

相關問題