解決maven打包失敗:程序包xxxx不存在問題
用Maven引入本地jar包這種做法非常不合理,很容易導(dǎo)致團(tuán)隊(duì)jar包混亂,最好嘗試搭建私服解決。
1.問題實(shí)質(zhì)
Maven倉庫jar包下載失敗或項(xiàng)目引入本地jar包Maven沒有對(duì)應(yīng)進(jìn)行配置
2.問題原因
(1)因網(wǎng)絡(luò)或其他原因?qū)е翸aven下載jar包到本地倉庫失敗
(2)項(xiàng)目引入本地jar包,只在編譯器里進(jìn)行了配置而沒有在Maven中進(jìn)行配置
3.解決步驟
(1)查看對(duì)應(yīng)出錯(cuò)jar包的本地Maven倉庫jar包是否下載完整

如果如上圖所示將文件刪掉重新下載即可。
(2)如果出現(xiàn)在編譯器中可以找到j(luò)ar包,但是用Maven打包報(bào)錯(cuò):

就要查看一下項(xiàng)目是否引入本地jar包但Maven沒有對(duì)其進(jìn)行配置。
解決方案1
找到存放第三方j(luò)ar包文件夾 (例如src/main/webapp/WEB-INF/lib)右鍵AddasLibrary加入項(xiàng)目運(yùn)行庫:

然后配置Maven打包插件掃描額外jar包
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<compilerArgs>
<arg>-verbose</arg>
<arg>-Xlint:unchecked</arg>
<arg>-Xlint:deprecation</arg>
<arg>-bootclasspath</arg>
<arg>${env.JAVA_HOME}/jre/lib/rt.jar</arg>
<arg>-extdirs</arg>
<arg>${project.basedir}/src/main/webapp/WEB-INF/lib</arg>
</compilerArgs>
</configuration>
</plugin>其中${project.basedir}為項(xiàng)目根結(jié)點(diǎn)

圖片引自:http://m.fzitv.net/article/240010.htm,此方法多人嘗試成功但筆者沒有解決。
解決方案2
修改pom文件,引入依賴并且將scope設(shè)置為system

配置Maven打包插件

此方法親測(cè)可行,但筆者引入的本地jar數(shù)量太多,一個(gè)一個(gè)寫估計(jì)會(huì)累死。
解決方案3
將jar包安裝至本地倉庫后使用pom文件直接引入,進(jìn)入需要引入的jar目錄,執(zhí)行以下命令
mvn install:install-file -Dfile=druid-1.1.4.jar -DgroupId=com.alibaba -DartifactId=druid -Dversion=1.1.4 -Dpackaging=jar
執(zhí)行后在本地倉庫中看到如下文件,說明安裝成功

此方法親測(cè)可行,理由同上,引入本地jar太多。
解決方案4
哪個(gè)模塊找不到j(luò)ar包就單獨(dú)rebuild一下這個(gè)model,注意rebuild之后不要用maven的clean


rebuild完成之后再重新install

簡(jiǎn)單粗暴,方便快捷,非常適合維護(hù)老項(xiàng)目。新項(xiàng)目就別這么搞了,老老實(shí)實(shí)建私服吧。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
在SpringBoot中配置MySQL數(shù)據(jù)庫的詳細(xì)指南
在 Spring Boot 中配置數(shù)據(jù)庫是一個(gè)相對(duì)簡(jiǎn)單的過程,通常涉及到以下幾個(gè)步驟:添加數(shù)據(jù)庫驅(qū)動(dòng)依賴、配置數(shù)據(jù)源屬性、以及可選的配置 JPA(如果使用),下面是小編給大家編寫的一個(gè)詳細(xì)的指南,以MySQL 數(shù)據(jù)庫為例,需要的朋友可以參考下2024-12-12
IntelliJ IDEA(或者JetBrains PyCharm)中彈出"IntelliJ IDEA License
今天小編就為大家分享一篇關(guān)于IntelliJ IDEA(或者JetBrains PyCharm)中彈出"IntelliJ IDEA License Activation"的解決辦法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2018-10-10
Java使用Tinify實(shí)現(xiàn)圖片無損壓縮(4M無損壓縮到1M)的方法
在當(dāng)今的數(shù)字化時(shí)代,圖片已成為網(wǎng)站、應(yīng)用和社交媒體中不可或缺的元素,然而,大尺寸的圖片不僅會(huì)增加頁面或者客戶端加載時(shí)間,還會(huì)占用大量的存儲(chǔ)空間,本文將詳細(xì)介紹如何利用Tinify壓縮圖片,并將其上傳至OSS,重點(diǎn)介紹圖片壓縮實(shí)現(xiàn)方式,需要的朋友可以參考下2024-08-08
Maven忽略單元測(cè)試及打包到Nexus的實(shí)現(xiàn)
我們的工程在打包發(fā)布時(shí)候,通常都需要忽略單元測(cè)試,以免因環(huán)境原因,無法通過單元測(cè)試而影響發(fā)布,本文主要介紹了Maven忽略單元測(cè)試及打包到Nexus的實(shí)現(xiàn),感興趣的可以了解一下2024-04-04
JDK自帶的序列化方式優(yōu)缺點(diǎn)及實(shí)現(xiàn)原理面試精講
這篇文章主要為大家介紹了JDK自帶的序列化方式優(yōu)缺點(diǎn)及實(shí)現(xiàn)原理面試精講,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10
SpringMVC攔截器創(chuàng)建配置及執(zhí)行順序
這篇文章主要為大家介紹了SpringMVC攔截器創(chuàng)建配置及執(zhí)行順序,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05

