解決Maven項(xiàng)目本地公共common包緩存問(wèn)題
Maven項(xiàng)目本地公共common包緩存
- 背景:Spring Cloud + Maven,Maven倉(cāng)庫(kù)在本地開發(fā)。
- 開發(fā)工具:intellij idea
- 項(xiàng)目架構(gòu):SpringBoot微服務(wù)分布式架構(gòu)
ps:STS緩存更嚴(yán)重(MyEclipse的Spring插件版是:STS)
越來(lái)越多的Web項(xiàng)目采用Maven構(gòu)建版本管理和控制以及第三方資源庫(kù)文件的的工具,主流的如:SSM架構(gòu),SpringCloud+Maven等。
Maven在版本管理和第三方資源庫(kù)文件引入方面相對(duì)于其他工具來(lái)說(shuō),體現(xiàn)了非常明顯的優(yōu)勢(shì)。
不過(guò)在使用過(guò)程中,也會(huì)有些缺陷:
這個(gè)缺陷體現(xiàn)在Maven緩存方面,當(dāng)采用本地倉(cāng)庫(kù)方式時(shí),這種問(wèn)題尤為明顯。
項(xiàng)目分為多個(gè)模塊,因此有采用多個(gè)子系統(tǒng)分庫(kù)分表開發(fā),這樣就會(huì)有些公共資源代碼抽離出來(lái)用Common包封裝好,
以本地jar包形式大家都可以方便調(diào)用,而不用每個(gè)項(xiàng)目都寫一些重復(fù)的代碼造成冗余(傳統(tǒng)架構(gòu)缺點(diǎn))。
問(wèn)題
當(dāng)Common包更新后,并發(fā)布到倉(cāng)庫(kù)后。在本地開發(fā)工具項(xiàng)目鼠標(biāo)右鍵——>Maven——>ReImport 如下:
或者找到項(xiàng)目的pom.xml配置文件右鍵:Maven——>ReImport或打開文件后,鼠標(biāo)右鍵:Maven——>ReImport
均可以重新引入更新后Cmomon包內(nèi)容,但有時(shí)由于緩存原因,明明ReImport了就是無(wú)效。這時(shí)候請(qǐng)別懷疑別人沒有更新發(fā)布,而是緩存的問(wèn)題。
解決方法
找到本地倉(cāng)庫(kù)Common包路徑,如我本地:C:\Users\Administrator\.m2\repository\com\epa*ks\e*s\common\
把該路徑下的所有項(xiàng)目刪除,然后重新ReImport項(xiàng)目,問(wèn)題解決。
注:編譯后的本地項(xiàng)目jar包是無(wú)法刪除。
maven緩存導(dǎo)致的問(wèn)題
今天遇到一新問(wèn)題,無(wú)論如何更新pom文件,mvn eclipse:eclipse 命令都未能將jar包引入進(jìn)來(lái),但是又不報(bào)錯(cuò)。
試著將jar包搞成一個(gè)本地庫(kù)不存(遠(yuǎn)程庫(kù)也不存在)在的版本,再次mvn eclipse:eclipse結(jié)果立即報(bào)錯(cuò),說(shuō)不存在此依賴包,這就無(wú)語(yǔ)了,沒有jar包的你說(shuō)我沒有,有jar包你又不給我引進(jìn)來(lái)。
經(jīng)過(guò)反復(fù)折騰,先將本地庫(kù)的jar包刪除,再mvn eclipse:eclipse ,就可以了,如果遠(yuǎn)程倉(cāng)庫(kù)沒有,則mvn eclipse:eclipse后只需mvn install到本地即可。
解決了這個(gè)問(wèn)題。maven自作聰明,搞得很智能的樣子,但是不知道的坑死別人,一句話,maven這個(gè)設(shè)計(jì)很腦殘
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用SpringCloudApiGateway之支持Cors跨域請(qǐng)求
這篇文章主要介紹了使用SpringCloudApiGateway之支持Cors跨域請(qǐng)求的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07java自定義異常以及throw和throws關(guān)鍵字用法
這篇文章主要介紹了java自定義異常以及throw和throws關(guān)鍵字用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-02-02解決springboot啟動(dòng)報(bào)錯(cuò)bean找不到的問(wèn)題
這篇文章主要介紹了解決springboot啟動(dòng)報(bào)錯(cuò)bean找不到原因,本文給大家分享完美解決方案,通過(guò)圖文相結(jié)合給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03JavaWeb使用mvc模式實(shí)現(xiàn)登錄功能
本文主要介紹了JavaWeb使用mvc模式實(shí)現(xiàn)登錄功能,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01Java中使用JavaMail多發(fā)郵件及郵件的驗(yàn)證和附件實(shí)現(xiàn)
這篇文章主要介紹了Java中使用Java Mail多發(fā)郵件及郵件的驗(yàn)證和附件實(shí)現(xiàn),包括在郵件中加入圖片等功能的實(shí)現(xiàn)講解,需要的朋友可以參考下2016-02-02Spring Boot 驗(yàn)證碼的生成和驗(yàn)證詳解
我們?cè)谧鲇脩舻卿浀臅r(shí)候,為了安全性考慮,會(huì)增加驗(yàn)證碼的功能,下面這篇文章主要給大家介紹了關(guān)于Spring Boot中驗(yàn)證碼的生成和驗(yàn)證的相關(guān)資料,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),需要的朋友們下面來(lái)一起看看吧。2017-06-06java多態(tài)的向上轉(zhuǎn)型的概念及實(shí)例分析
在本篇內(nèi)容里小編給大家整理的是一篇關(guān)于java多態(tài)的向上轉(zhuǎn)型的概念及實(shí)例分析,對(duì)此有興趣的朋友們可以跟著學(xué)習(xí)下。2021-05-05SpringBoot集成logback打印彩色日志的代碼實(shí)現(xiàn)
Logback是由log4j創(chuàng)始人設(shè)計(jì)的另一個(gè)開源日志組件,默認(rèn)情況下,Spring?Boot會(huì)用Logback來(lái)記錄日志,并用INFO級(jí)別輸出到控制臺(tái),本文給大家介紹了SpringBoot集成logback打印彩色日志,需要的朋友可以參考下2024-03-03