修改Maven settings.xml 後配置未生效的解決
1. 問題描述:
自己修改了下 ${M2_HOME}/conf/settings.xml中的本地repository地址,但是重新執行mvn的時候發現repository地址並沒有改變。那麼問題所在?
2. settings.xml檔案位置
settings.xml檔案一般存在於兩個位置:
全域性配置: ${M2_HOME}/conf/settings.xml
使用者配置: user.home/.m2/settings.xml
(note:使用者配置優先於全域性配置。)
3. 配置優先順序:
需要注意的是:區域性配置優先於全域性配置。
配置優先順序從高到低:pom.xml> user settings > global settings
如果這些檔案同時存在,在應用配置時,會合並它們的內容,如果有重複的配置,優先順序高的配置會覆蓋優先順序低的。
自己遇到的問題剛好驗證了上面優先順序的說法。修改~/.m2/settings.xml中的地址後變正常了。
補充知識:解決Maven修改setting.conf配置新增修改映象庫不生效的問題
問題描述
有時候出現一種奇怪的問題,就是無論如何修改遠端庫,映象庫的地址,好像都不生效。
下面給出排查方法與思路。
解決步驟
1、首先檢查eclipse或者IDEA中配置的settings檔案是否是自己編輯的那個檔案。
2、如果是,那麼檢查配置的映象庫mirror,看是否有mirrorOf配置的是*,這個值表示匹配所有的映象庫,相當於會遮蔽掉配置的其他的映象庫。
3、注意配置的優先順序,pom 配置 > settings中的配置
4、如果配置沒有問題,那麼檢查settings檔案是否有語法錯誤。特別是當出現不管怎麼改遠端庫地址,拉取jar的時候都跑去中央倉庫下載的現象時。有時候頻繁修改或者複製貼上,導致settings檔案語法出現了錯誤。可以在命令列執行下面的命令,如果有語法錯誤,會得到提示。
mvn help:effective-settings
PS:其實除了學習的時候,在settings中配置阿里雲映象庫來加速以外,通常工作中既會用到阿里雲、中央倉庫之類的公共庫,也要用到公司內的私服庫,因此我不是很推薦配置mirror映象來加速(因為mirror就算配了多個,也只會有一個生效),可以通過另一種方式配置多個遠端庫,既可以加速訪問公共庫,又可以同時訪問私服庫。
以上這篇修改Maven settings.xml 後配置未生效的解決就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。