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