天天看點

maven項目管理systemPath方式 本地jar安裝至maven倉庫 Maven生産的包copy至父項目lib

有些不通用的包,maven倉庫沒有,隻能通過本地包依賴,就像下面方式:

在需要依賴的項目建lib檔案夾,如下:

maven項目管理systemPath方式 本地jar安裝至maven倉庫 Maven生産的包copy至父項目lib

然後在pom.xml項目管理檔案裡面加入本地依賴,如下

maven項目管理systemPath方式 本地jar安裝至maven倉庫 Maven生産的包copy至父項目lib

這種情況可以解決問題,但是有些時候會産生莫名的問題,比如項目開發過程中會出現項目雖然打包成功(mvn clean install –dmaven.test.skip=true),但是運作過程中會報包依賴錯誤。

一般不建議通過這種方式配置依賴,通常做法建議你把本地包安裝到maven倉庫,指令如下:

mvn install:install-file-dgroupid=com.httpmime -dartifactid=httpmime4.0 -dversion=1.0 -dpackaging=jar-dfile=httpmime-4.0.jar

運作指令後,httpmime-4.0.jar已經加入到本地倉庫了

maven項目管理systemPath方式 本地jar安裝至maven倉庫 Maven生産的包copy至父項目lib

然後把依賴配置裡的<systempath>以及<scope>移出掉,就可以了。

上面雖然把本地jar包安裝至本地倉庫了,但是因為你本地倉庫其他開發人員依然不能引用,導緻他人依賴出現問題。這個時候需要把安裝本地的jar包按照maven倉庫的路徑原封不動的copy一份父項目(打包類型為pom)的檔案夾lib裡。具體見下圖:

maven項目管理systemPath方式 本地jar安裝至maven倉庫 Maven生産的包copy至父項目lib

這樣其他開發人員下載下傳後,運作建構指令,這些包會自動生成至他本地的倉庫。