jenkins构建maven项目:找不到本地依赖包的解决办法
程序员文章站
2022-06-05 17:22:25
...
转载:https://www.cnblogs.com/yy-cola/p/9664598.html
前言:
我们在构建maven项目时,常常会用到一些特殊的jar包(不能在*仓库中直接下载到本地仓库如微软不允许以maven的方式直接下载com.microsoft.sqlserver:sqljdbc4:jar:4.0等jar包),我们只能手动下载这部分jar包导入到maven本地仓库去引用。。
一个项目之前都能正常构建部署,今天开发改了pom文件,修改了一个本地jar包的引用方式,导致jenkins构建失败,再此记录
修改前的pom文件相关部分:
修改后的pom文件相关部分:
- 第一种引用方式jenkins会直接根据pom文件里配置的路径去项目文件夹下找到指定的jar包进行编译
- 第二种方式,jenkins会默认去maven的远程仓库找依赖包,但是远程仓库是没有这个包的,因此会报错。如图:
解决方案:①先命令行安装jar包到maven本地仓库:
将jar包存放在某一目录下,例如:c:/db2jcc.jar(Dfile)
DgroupId DartifactId Dversion Dpackaging :前三个如pom文件,最后一个是最后安装到仓库的jar包名
install-file -Dfile=c:/db2jcc.jar -DgroupId=db2 -DartifactId=db2jcc -Dversion=1.0 -Dpackaging=db2jcc-1.0.jar
②查看maven的本地仓库会找到被安装成功的jar包
③此时在jenkins项目配置中做如下图配置,意思是在这里使用-Dmaven.repo.local,指定本地仓库的路径,
这样编译的时候,如果maven在远程*仓库找不到指定的jar包会去本地仓库找(本地仓库的路径默认是这个,但开发存放jar包的地址可能不是这个,需要找开发确认)
clean package -Dmaven.repo.local=C:\Users\Administrator\.m2\repository
最近遇到一个新的知识点,这个地方其实就是为maven打包做一些配置的,还可以跳过测试:
clean package -Dmaven.repo.local=C:\Users\Administrator\.m2\repository -Dmaven.test.skip=true
上一篇: 算法——查找之二叉查找树
下一篇: 二叉查找树BST——Java实现
推荐阅读
-
maven多项目打包报错---子模块相互依赖打包时所遇到的问题:依赖的程序包找不到 package xxx does not exist
-
maven配置安装项目依赖的本地jar包到本地仓库上并引用
-
jenkins构建maven项目:找不到本地依赖包的解决办法
-
IntelliJ IDEA基于maven构建的web项目找不到jar包
-
IntelliJ IDEA基于maven构建的web项目找不到jar包
-
maven多项目打包报错---子模块相互依赖打包时所遇到的问题:依赖的程序包找不到 package xxx does not exist
-
jenkins构建maven项目:找不到本地依赖包
-
使用Maven管理项目时,本地仓库有对应的jar包,但还是报找不到
-
Maven构建java项目为可执行的jar包(包含依赖jar包)