修改Maven settings.xml 后配置未生效的解決
1. 問題描述:
自己修改了下 ${M2_HOME}/conf/settings.xml中的本地repository地址,但是重新執(zhí)行mvn的時(shí)候發(fā)現(xiàn)repository地址并沒有改變。那么問題所在?
2. settings.xml文件位置
settings.xml文件一般存在于兩個(gè)位置:
全局配置: ${M2_HOME}/conf/settings.xml
用戶配置: user.home/.m2/settings.xml
(note:用戶配置優(yōu)先于全局配置。)
3. 配置優(yōu)先級(jí):
需要注意的是:局部配置優(yōu)先于全局配置。
配置優(yōu)先級(jí)從高到低:pom.xml> user settings > global settings
如果這些文件同時(shí)存在,在應(yīng)用配置時(shí),會(huì)合并它們的內(nèi)容,如果有重復(fù)的配置,優(yōu)先級(jí)高的配置會(huì)覆蓋優(yōu)先級(jí)低的。
自己遇到的問題剛好驗(yàn)證了上面優(yōu)先級(jí)的說法。修改~/.m2/settings.xml中的地址后變正常了。
補(bǔ)充知識(shí):解決Maven修改setting.conf配置添加修改鏡像庫不生效的問題
問題描述
有時(shí)候出現(xiàn)一種奇怪的問題,就是無論如何修改遠(yuǎn)程庫,鏡像庫的地址,好像都不生效。
下面給出排查方法與思路。
解決步驟
1、首先檢查eclipse或者IDEA中配置的settings文件是否是自己編輯的那個(gè)文件。
2、如果是,那么檢查配置的鏡像庫mirror,看是否有mirrorOf配置的是* ,這個(gè)值表示匹配所有的鏡像庫,相當(dāng)于會(huì)屏蔽掉配置的其他的鏡像庫。
3、注意配置的優(yōu)先級(jí),pom 配置 > settings中的配置
4、如果配置沒有問題,那么檢查settings文件是否有語法錯(cuò)誤。特別是當(dāng)出現(xiàn)不管怎么改遠(yuǎn)程庫地址,拉取jar的時(shí)候都跑去中央倉庫下載的現(xiàn)象時(shí)。有時(shí)候頻繁修改或者復(fù)制粘貼,導(dǎo)致settings文件語法出現(xiàn)了錯(cuò)誤??梢栽诿钚袌?zhí)行下面的命令,如果有語法錯(cuò)誤,會(huì)得到提示。
mvn help:effective-settings
PS:其實(shí)除了學(xué)習(xí)的時(shí)候,在settings中配置阿里云鏡像庫來加速以外,通常工作中既會(huì)用到阿里云、中央倉庫之類的公共庫,也要用到公司內(nèi)的私服庫,因此我不是很推薦配置mirror鏡像來加速(因?yàn)閙irror就算配了多個(gè),也只會(huì)有一個(gè)生效),可以通過另一種方式配置多個(gè)遠(yuǎn)程庫,既可以加速訪問公共庫,又可以同時(shí)訪問私服庫。
以上這篇修改Maven settings.xml 后配置未生效的解決就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
5分鐘快速學(xué)會(huì)spring boot整合JdbcTemplate的方法
這篇文章主要給大家介紹了如何通過5分鐘快速學(xué)會(huì)spring boot整合JdbcTemplate的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用spring boot整合JdbcTemplate具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12Spring中property-placeholder的使用與解析詳解
本篇文章主要介紹了Spring中property-placeholder的使用與解析詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-05-05java中字符進(jìn)行全角半角轉(zhuǎn)換示例代碼
全角:指一個(gè)字符占用兩個(gè)標(biāo)準(zhǔn)字符位置,而半角:指一字符占用一個(gè)標(biāo)準(zhǔn)的字符位置,在日常開發(fā)中經(jīng)常會(huì)遇到全角半角轉(zhuǎn)換的要求,下面這篇文章主要給大家介紹了關(guān)于java中字符進(jìn)行全角半角轉(zhuǎn)換的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。2017-08-08SpringBoot+Redis執(zhí)行l(wèi)ua腳本的5種方式總結(jié)
Lua是一種快速、輕量級(jí)的腳本語言,廣泛應(yīng)用于各種領(lǐng)域,包括數(shù)據(jù)庫,Redis作為一個(gè)內(nèi)嵌Lua解釋器的NoSQL數(shù)據(jù)庫,允許通過Lua腳本在服務(wù)器端執(zhí)行一些復(fù)雜的操作,本文給大家介紹了使用SpringBoot Redis執(zhí)行l(wèi)ua腳本的五種方式,需要的朋友可以參考下2023-11-11java集合PriorityQueue優(yōu)先級(jí)隊(duì)列方法實(shí)例
這篇文章主要為大家介紹了java集合PriorityQueue優(yōu)先級(jí)隊(duì)列方法實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12mybatis執(zhí)行批量更新batch update 的方法(oracle,mysql兩種)
這篇文章主要介紹了mybatis執(zhí)行批量更新batch update 的方法,提供oracle和mysql兩種方法,非常不錯(cuò),需要的朋友參考下2017-01-01Java中的線程同步與ThreadLocal無鎖化線程封閉實(shí)現(xiàn)
這篇文章主要介紹了Java中的線程同步與ThreadLocal無鎖化線程封閉實(shí)現(xiàn),Synchronized關(guān)鍵字與ThreadLocal變量的使用是Java中線程控制的基礎(chǔ),需要的朋友可以參考下2016-03-03