maven打包加入本地jar包
在使用maven打包的过程中,有时候我们需要添加一些本地的jar包,并将其打到jar包的lib中。
首先将需要本地的jar包,放到项目的的src/resources/lib下面。
然后在对应的项目的pom中加入一下依赖:
<dependency><groupId>com.amazonaws</groupId><artifactId>zos-java-sdk-s3</artifactId><scope>system</scope><version>1.0.1</version><!-- 项目 src/main/resources/lib 目录下的 my-common-1.0.1.jar --><systemPath>${project.basedir}/src/main/resources/lib/my-common-1.0.1.jar</systemPath> </dependency>
注意:导入的jar需要时有版本号的,如果没有,可以手动修改jar包的名称。
最后需要在打包中配置加入本地jar包。这里分为两钟方式:
1. 引入的jar包是在启动类所在的模块里面。可以直接在启动类所在的项目pom中加入以下:
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><!-- true表示打包时包含scope为system的第三方的jar包,在在第2步骤自定义依赖时<scope>system</scope> --><includeSystemScope>true</includeSystemScope></configuration></plugin></plugins> </build>
2.引入的jar包是在启动类项目所依赖的其他jar中的,比如说A模块是启动类模块,B模块引入了本地jar。然后A模块中引入了B。这样需要在A模块的打包中配置:
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><!-- true表示打包时包含scope为system的第三方的jar包,在在第2步骤自定义依赖时<scope>system</scope> --><includeSystemScope>true</includeSystemScope></configuration></plugin></plugins> </build>
总而言之就是需要在 启动类所在的模块中配置打包策略