maven项目打包时,如果遇到需要添加本地jar包依赖的时候,可以选择两种方法:
1. 安装到本地仓库
第一种方法比较常规,适用于需要添加的jar包也是由maven项目导出,含有pom文件的时候。只需要将jar包安装到本地maven仓库下,然后添加依赖即可。
(1)安装到本地仓库,执行以下命令(其中的-dfile/-dgroupid/-dartifactid/-dversion项根据pom文件内容填写):
mvn install:install-file -dfile=xxxxx.jar -dgroupid=xxx.xxx.xxx -dartifactid=xxxxx -dversion=1.0.0 -dpackaging=jar
(2)安装之后可以在本地仓库中找到对应的jar包。然后将对应的依赖信息插入到工程的pom文件即可:
xxx.xxx.xxx
xxxxx
1.0.0
2. dependency中指定scope="system"和本地jar包路径
这种方法适用于其他方式导出的jar包,jar包中不含有pom信息,从而无法安装进本地仓库的情况。做法是:先配置本地jar包依赖,然后在build时将设置将jar包导出,同时配置manifest。
(1)配置本地jar包依赖(systempath指向本地jar包路径):
com.amazonaws
aws-java-sdk-s3
1.11.0
system
${project.basedir}/lib/xxx.jar
(2)在的spring-boot-maven-plugin中设置将本地jar包导出到项目最终的依赖库中:
org.springframework.boot
spring-boot-maven-plugin
true
(3)如果项目使用maven-jar-plugin插件打包的话,还需要在manifectentries中添加对应的jar包信息;否则虽然jar包导出了,但是项目生成的manifest.mf文件中没有对应的依赖信息,也会导致运行时找不到对应的class。
org.apache.maven.plugins
maven-jar-plugin
true
lib/
xxxx
./ lib/xxxxx.jar
${project.build.directory}/xxxxx
(4)最后附上一个项目完整的配置(该配置可以将最终生成的jar包和依赖库、配置文件分开)。
xxxxx
src/main/java
src/main/resources
${project.build.directory}/xxxxx
**/*.java
src/test/java
src/test/resources
true
**/*.java
org.springframework.boot
spring-boot-maven-plugin
true
org.apache.maven.plugins
maven-surefire-plugin
true
org.apache.maven.plugins
maven-dependency-plugin
copy-dependencies
package
copy-dependencies
${project.build.directory}xxxxx/lib
org.apache.maven.plugins
maven-jar-plugin
true
lib/
xxx.xxx.xxxxx
./ lib/xxxxx.jar
${project.build.directory}/xxxxx
到此这篇关于maven pom.xml 添加本地jar包依赖以及打包方法的文章就介绍到这了,更多相关maven pom.xml jar包内容请搜索萬仟网以前的文章或继续浏览下面的相关文章希望大家以后多多支持萬仟网!
希望与广大网友互动??
点此进行留言吧!