1. 程式人生 > >[Maven] 無法獲取私服最新Jar包的問題

[Maven] 無法獲取私服最新Jar包的問題

更新了某個工具包到私服之後,編譯時卻還是獲取不到最新的jar包?怎麼辦?

即使是代SNAPSHOT後後綴的快照包,也不能保證每次編譯獲取到最新的,預設有一個更新策略,為了保證每一次獲取到最新的jar包,我們

可以修改這個策略;

1.配置pom檢查快照依賴:
找到pom的repositories配置節點,配置Snapshots節點,注意要找到if_snapshots這個url,修改snapshot的enabled為true,並設定updatePolicy為alaways:
<id>Snapshots</id>
  <url>http://192.168.xx.xx:xxxx/nexus/content/repositories/if_snapshots/</url>
  <snapshots>
  <enabled>true</enabled>
  <updatePolicy>always</updatePolicy>
  </snapshots>
  </repository>
     這個url就是我們配置的快照倉庫地址,我們指定了updatePolicy是alaways,每次編譯都保證可以獲取到最新的包。

#####2.編譯時檢查依賴:

修改make打包指令碼,新增-U引數,如:mvn clean install package -U -DskipTests=true,-U引數的含義是update-snapshots,保證可以更新快照包。
建議新增上述兩點,這樣工程在每次編譯的時候,都會獲取到最新的快照依賴包。否則即使更新了jar包到maven私服,持續整合那邊構建的時候,也不能立即

獲取到最新的包。有時候我們想立刻更新一個私服上的jar包,編譯時卻獲取不到最新的,浪費很多時間。

3.另外:
如果jar包更新支援了某個新的功能,我們也可以遞增版本號,避免這樣的問題;