jenkins maven编译打包找不到依赖库的解决办法

解决Jenkins Maven编译找不到json-lib依赖的问题
本文介绍了在使用Jenkins进行Maven编译时遇到找不到json-lib依赖库的问题,通过手动下载jar包并使用mvn命令安装到本地库,解决了本地编译问题。但在测试服务器上,发现Jenkins使用的依赖库路径不同,经过查找发现jar被保存在了不同的目录。将jar复制到Jenkins的依赖库路径下,成功完成构建。对于Maven依赖库的配置和Jenkins服务器的特殊设置仍需进一步调查。

今天开发人员工程环境中新引入了json-lib-2.4.jar,通过jenkins调用maven自动编译打包一直报错找不到此依赖包,

具体如下:

[ERROR] Failed to execute goal on project SP_FrontStage: Could not resolve dependencies for project com.hddata.steganalysis:SP_FrontStage:war:1.0-SNAPSHOT: Failure to find net.sf.json-lib:json-lib:jar:2.4 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced -> [Help 1]

试了网上的很多方法,例如:删除了目录重新下载编译;先clean再编译……均无果;


想想,找不到这个依赖包,说明这个包没有下载下来,手动下载安装怎么样?

于是手动下载了此jar包,通过mvn命令引入到了本地库;

命令如下:

mvn install:install-file -Dfile=f:/json-lib-2.4-jdk15.jar -DgroupId=net.sf.json-lib -DartifactId=json-lib -Dversion=2.4 -Dpackaging=jar

注意:DgroupId  DartifactId  Dversion 这三项要和我们工程中pom.xml文件中配置的一致;

至此,在本地再次编译打包,顺利完成;


接下来,在测试服务器采用同样 的方式下载安装,但却仍然报找不到json-lib-2.4.jar;

这时用到了如下命令:

mvn clean install -X  可以查看到maven完整的依赖踪迹,发现jenkins调用的依赖库目录为

C:\windows\system32\config\systemprofile\.m2\repository\;
进入此依赖库发现,jar名称是json-lib-2.4.jar.lastUpdated,多了最后的lastUpdated(具体原因未知)
而我们安装的jar目录保存在C:\Users\user\.m2\repository这个目录

将此目录下的jar拷贝到jenkins引用的依赖库,重新启动构建,顺利完成;

至此问题解决,但是maven引用的依赖库如何设置?为何服务器jenkins引用的依赖库和默认的不一致?待调研



评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值