Spring Boot 教程:将自定义的 JAR 包引入到 Maven 项目中

简介: 在开发Spring Boot项目时,我们经常需要引入第三方库或自定义的JAR包来扩展功能。但这个时候,去maven仓库上,并没有发现有他们的jar可以引用。本文将介绍如何将自定义的JAR包引入到Maven项目中,以便在Spring Boot应用程序中使用它。

jar.jpg

在开发Spring Boot项目时,我们经常需要引入第三方库或自定义的JAR包来扩展功能。但这个时候,去maven仓库上,并没有发现有他们的jar可以引用。本文将介绍如何将自定义的JAR包引入到Maven项目中,以便在Spring Boot应用程序中使用它。

方式一:直接引入本地jar包

步揍一:将jar文件拷贝到项目resources/lib目录下

_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>

步揍三:将依赖打成外部jar包

<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包的引入

方式二:mvn 导入本地jar到本地 Maven 仓库

步揍一:mvn 导入本地jar到本地 Maven 仓库

_20230710224436.png

步揍二:引入依赖

<dependency>
    <groupId>net.dongliu</groupId>
    <artifactId>apk-parser</artifactId>
    <version>2.6.10</version>
</dependency>

到此我们就完成了mvn 导入本地jar到本地 Maven 仓库,需要注意的是我们每次清空仓库后都需要重新导入下依赖

附: mvn环境变量配置

未配置mvn环境变量
_20230710223516.png

添加系统变量:M2_HOME
_20230710223826.png

添加path:

_20230710224153.png

目录
相关文章
|
15天前
|
Java Maven
maven项目的pom.xml文件常用标签使用介绍
第四届人文,智慧教育与服务管理国际学术会议(HWESM 2025) 2025 4th International Conference on Humanities, Wisdom Education and Service Management
72 8
|
13天前
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
37 3
|
1月前
|
Java 关系型数据库 MySQL
Maven——创建 Spring Boot项目
Maven 是一个项目管理工具,通过配置 `pom.xml` 文件自动获取所需的 jar 包,简化了项目的构建和管理过程。其核心功能包括项目构建和依赖管理,支持创建、编译、测试、打包和发布项目。Maven 仓库分为本地仓库和远程仓库,远程仓库包括中央仓库、私服和其他公共库。此外,文档还介绍了如何创建第一个 SpringBoot 项目并实现简单的 HTTP 请求响应。
128 1
Maven——创建 Spring Boot项目
|
1月前
|
Java 关系型数据库 MySQL
如何使用 maven 创建一个 Spring Boot项目
Maven 是一个强大的项目管理工具,通过配置 `pom.xml` 文件自动获取所需的 jar 包,提高开发效率。其核心功能包括项目构建和依赖管理。项目构建支持编译、测试、打包和发布等流程,而依赖管理则通过中央仓库、本地仓库和私有服务器获取和管理项目依赖。示例中展示了如何创建第一个 SpringBoot 项目并实现简单接口。
28 1
如何使用 maven 创建一个 Spring Boot项目
|
29天前
|
缓存 IDE Java
idea的maven项目打包时没有source下的文件
【10月更文挑战第21天】idea的maven项目打包时没有source下的文件
42 1
|
29天前
|
Java API Apache
除了 Maven,还有哪些工具可以管理项目的依赖和版本冲突
除了Maven,常用的项目依赖管理和版本冲突解决工具有Gradle、Ivy、Ant+Ivy、SBT等。这些工具各有特点,适用于不同的开发环境和需求。
|
1月前
|
Java Apache Maven
Java/Spring项目的包开头为什么是com?
本文介绍了 Maven 项目的初始结构,并详细解释了 Java 包命名惯例中的域名反转规则。通过域名反转(如 `com.example`),可以确保包名的唯一性,避免命名冲突,提高代码的可读性和逻辑分层。文章还讨论了域名反转的好处,包括避免命名冲突、全球唯一性、提高代码可读性和逻辑分层。最后,作者提出了一个关于包名的问题,引发读者思考。
Java/Spring项目的包开头为什么是com?
|
1月前
|
Java 应用服务中间件 Maven
SpringBoot Maven 项目打包的艺术--主清单属性缺失与NoClassDefFoundError的优雅解决方案
SpringBoot Maven 项目打包的艺术--主清单属性缺失与NoClassDefFoundError的优雅解决方案
330 0
|
3月前
|
Java Maven
解决idea每次新建maven项目都需要重新配置maven的问题
解决idea每次新建maven项目都需要重新配置maven的问题
168 1
|
1月前
|
Java Maven Kotlin
idea maven创建kotlin项目
本文介绍了在IntelliJ IDEA中使用Maven创建Kotlin项目的步骤,包括在`pom.xml`文件中添加Maven中央仓库、配置`kotlin-maven-plugin`插件、指定源目录、添加测试插件和执行插件,以及添加Kotlin测试依赖和标准库依赖。文中还提到了如何通过更换镜像或使用代理来解决依赖下载速度慢的问题,并展示了运行示例代码的截图。
99 4
idea maven创建kotlin项目

推荐镜像

更多
下一篇
无影云桌面