[Maven] 打包编译本地Jar包报错的几种解决办法
创始人
2024-12-28 16:34:11
0

目录

方式1:通过scope指定

方式2:通过新建lib

方式3:通过build节点打包依赖​​​​​​​

方式4:安装Jar包到本地

方式5:发布到远程私有仓库

方式6:删除_remote.repositories

方式7:打包源码到本地仓库


一般地,maven pom引入本地jar包的几种方式有:(请根据优缺点自行选择)

方式1:通过scope指定

通过scope指定为system,systemPath指定本地路径引入

                     com.test.common             common-util             1.0.0             system             lib/common-util-1.0.0         

如果项目有很多jar包,则需要增加所有jar的本地引用地址;

方式2:通过新建lib

通过新建lib,之后通过工具添加依赖。但生产打包上线重新打包时依然有问题,所以此种方式只方便开发环境。

方式3:通过build节点打包依赖

通过新建lib,并添加jar包后,通过build节点打包依赖(此方式适用打包上线,但开发环境仍然需要结合方式2)

                                           lib                 /BOOT-INF/lib/                                      **/*.jar                                            

方式4:安装Jar包到本地

安装到本地命令:

mvn install:install-file -DgroupId=[groupId] -DartifactId=[artifactId] -Dversion=[version] -Dpackaging=jar -Dfile=[path to file] 

例如:

mvn install:install-file -DgroupId=org.pentaho -DartifactId=pentaho-aggdesigner-algorithm -Dversion=5.1.5-jhyde -Dpackaging=jar -Dfile=D:\test\jar\pentaho-aggdesigner-algorithm-5.1.5-jhyde.jar

方式5:发布到远程私有仓库

发布到远程私有仓库

mvn deploy:deploy-file -DgroupId==[groupId]-DartifactId=[artifactId] -Dversion=[version] -Dpackaging=jar -Dfile=[path to file]-Durl=[url] -DrepositoryId=[id]

需要有私服。

方式6:删除_remote.repositories

对于有些项目本来pom引用的是私服的jar包,但由于私服无法提供连接,但是复制了别人的repository下所有包,但打包时仍然每次都尝试去远程检查jar包而报错。

可删除二方包的_remote.repositories文件,避免maven在更换镜像的时候,每次都尝试去远程检查jar包。

这里提供一个bat脚本来批量删除,或者也可以使用Windows文件搜索工具Everything来完成。

@echo off rem C:\Users\uuu\.m2\repository\cn\tongdun rem C:\Users\uuu\.m2\repository\cn\fraudmetrix rem C:\Users\uuu\.m2\repository\cn\tongdun set REPOSITORY_PATH=C:\Users\uuu\.m2\repository\cn\fraudmetrix rem searching... for /f "delims=" %%i in ('dir /b /s "%REPOSITORY_PATH%\*_remote.repositories*"') do (     rem echo %%i     del /s /q %%i ) rem finished echo end pause 

方式7:打包源码到本地仓库

在有源码的情况下,可以使用maven打包源码到本地仓库

mvn clean install

然后又可以通过pom简便的引用了:

                     com.test.common             common-util             1.0.0         

打包之后类似于三方jar包的仓库形式:

以上7中方法,可以根据需要的场景使用。

相关内容

热门资讯

五分钟了解!天天贵阳麻将软挂神... 您好:天天贵阳麻将软挂神器这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户...
透视科技!wpk透视挂是真的(... 透视科技!wpk透视挂是真的(透视)底牌透视挂辅助软件(可靠开挂辅助必胜教程)-哔哩哔哩;wpk透视...
透视脚本!智星德州有脚本,78... 透视脚本!智星德州有脚本,789大菠萝如何手气顺,细节揭秘(发现有挂)-哔哩哔哩暗藏猫腻,小编详细说...
黑科技辅助!wepoke显示游... 黑科技辅助!wepoke显示游作弊(智能ai辅助插件安装)软件透明挂黑科技(先前存在有挂)-哔哩哔哩...
五分钟了解!多乐跑得快自创房间... 五分钟了解!多乐跑得快自创房间可以拿好牌(辅助挂)往昔真的有挂(专业辅助攻略教程)-哔哩哔哩;五分钟...
透视有挂!德州机器人代打脚本(... 透视有挂!德州机器人代打脚本(透视)底牌透视挂辅助系统(可靠开挂辅助解密教程)-哔哩哔哩;1、透视有...
透视透视!wepoker新号好... 透视透视!wepoker新号好一点,中致上饶辅助,科技教程(果真有挂)-哔哩哔哩1、全新机制【中致上...
黑科技辅助!德州之星手游辅助(... 《黑科技辅助!德州之星手游辅助(智能ai辅助工具)软件透明挂黑科技(竟然有挂)-哔哩哔哩》 德州之星...
第五分钟了解!欢乐龙城3有挂(... 第五分钟了解!欢乐龙城3有挂(辅助挂)确实有挂(专业辅助AI教程)-哔哩哔哩;超受欢迎的欢乐龙城3有...
黑科技辅助!微扑克辅助手机(智... 【福星临门,好运相随】;黑科技辅助!微扑克辅助手机(智能ai辅助插件安装)软件透明挂黑科技(真是真的...