在开发Spring Boot项目时,我们经常需要引入第三方库或自定义的JAR包来扩展功能。但这个时候,去maven仓库上,并没有发现有他们的jar可以引用。本文将介绍如何将自定义的JAR包引入到Maven项目中,以便在Spring Boot应用程序中使用它。
_20230710220425.png
<dependency>
<groupId>net.dongliu</groupId>
<artifactId>apk-parser</artifactId>
<version>2.6.10</version>
<scope>system</scope>
<systemPath>${pom.basedir}/src/main/resources/lib/apkinfo.jar</systemPath>
</dependency>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<archive>
<!-- 添加index则不从mainfest中读取classpath,而是从Index.list中读取
<index>true</index> -->
<manifest>
<!-- 项目启动类 -->
<mainClass>cn.xj.Application</mainClass>
<!-- 在jar包的MF文件中生成Class-Path属性 -->
<addClasspath>true</addClasspath>
<!--依赖前缀-->
<classpathPrefix>lib/</classpathPrefix>
<packageName>${project.artifactId}-${project.version}</packageName>
</manifest>
<manifestEntries>
<Class-Path>lib/apkinfo.jar ./</Class-Path>
</manifestEntries>
</archive>
</configuration>
</plugin>
这里的最关键就是<manifestEntries></manifestEntries>
这个属性了。这里的里的值,需要和上面依赖中路径的名字一致。
到此我们就完成了本地jar包的引入
_20230710224436.png
<dependency>
<groupId>net.dongliu</groupId>
<artifactId>apk-parser</artifactId>
<version>2.6.10</version>
</dependency>
到此我们就完成了mvn 导入本地jar到本地 Maven 仓库,需要注意的是我们每次清空仓库后都需要重新导入下依赖
未配置mvn环境变量
添加系统变量:M2_HOME
添加path:
_20230710224153.png