Spring Boot引用外部JAR包和将自己的JAR包发布到本地Maven库

news/2024/12/2 13:10:18/

Spring Boot引用外部JAR包

Spring Boot 项目可以通过在项目中引入外部 JAR 包来增强功能。以下是使用Spring Boot引用外部JAR包的步骤:

将外部JAR包添加到项目中,可以通过直接将JAR包复制到项目目录下的“lib”目录中,或者使用Maven的方式添加依赖。

在 Spring Boot 项目的 pom.xml 文件中添加依赖声明。如果使用Maven添加依赖,只需在 pom.xml 文件中添加相应的 元素即可。如果将JAR包复制到项目目录下的“lib”目录中,则需要使用Maven的 system scope 来声明该依赖。例如:

<!-- 使用Maven的方式引入外部JAR包 -->
<dependency><groupId>com.example</groupId><artifactId>external-jar</artifactId><version>1.0</version>
</dependency><!-- 将JAR包复制到项目目录下的"lib"目录中,使用system scope声明依赖 -->
<dependency><groupId>com.example</groupId><artifactId>external-jar</artifactId><version>1.0</version><scope>system</scope><systemPath>${basedir}/lib/external-jar.jar</systemPath>
</dependency>

在代码中使用外部JAR包中的类或方法。如果使用Maven添加依赖,则可以直接使用依赖中的类或方法。如果使用 system scope 来声明依赖,则需要在代码中手动导入外部JAR包中的类。

将自己的JAR包发布到本地Maven库

如果你正在开发自己的JAR包,并想在其他项目中使用它,则可以将该JAR包发布到本地Maven库中,以便其他项目可以方便地引用。以下是将自己的JAR包发布到本地Maven库的步骤:

打包自己的JAR包,可以使用Maven或其他构建工具进行打包,例如Maven的mvn package命令。

打开命令行或终端窗口,进入JAR包所在的目录,使用以下命令将JAR包安装到本地Maven版本库:

mvn install:install-file -Dfile=path/to/your.jar -DgroupId=com.example -DartifactId=your-artifact -Dversion=1.0 -Dpackaging=jar

其中,“-Dfile"参数指定JAR包所在的路径,”-DgroupId"、“-DartifactId”、“-Dversion"参数分别指定JAR包的groupId、artifactId和version,”-Dpackaging"参数指定打包方式为JAR。

在其他项目的 pom.xml 文件中添加依赖声明,例如:

<dependency><groupId>com.example</groupId><artifactId>your-artifact</artifactId><version>1.0</version>
</dependency>

在其他项目中使用自己的JAR包中的类或方法即可。
需要注意的是,如果使用了 SNAPSHOT 版本号,则在每次发布新的 SNAPSHOT 版本时,都需要重新安装 JAR 包到本地 Maven 仓库中,否则其他项目无法获取到最新的 SNAPSHOT 版本。


http://www.ppmy.cn/news/56104.html

相关文章

Python科学计算 - Numpy快速入门

Numpy是什么? Numpy是Python的一个科学计算的库,提供了矩阵运算的功能,其一般与Scipy、matplotlib一起使用。它可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix))。 NumPy(Numeric Python)…

第四十一章 配置镜像 - 使用 ^ZMIRROR 例程

文章目录 第四十一章 配置镜像 - 使用 ^ZMIRROR 例程 第四十一章 配置镜像 - 使用 ^ZMIRROR 例程 用户定义的 ^ZMIRROR 例程允许为特定镜像事件&#xff08;例如故障转移成员成为主要成员&#xff09;实现自己的自定义、特定于配置的逻辑和机制。 ^ZMIRROR 例程包含以下入口点…

区块链在元宇宙中的作用(二)

第一&#xff0c;解决数据信任问题 如果一个元宇宙没有区块链技术&#xff0c;那么可能会面临各种各样的数据信任问题&#xff0c;你的账号可以被随时平台禁封&#xff0c;你的“资产”价值完全受平台定价和发行量的影响、你的投诉意见可以被平台忽视、你的言论可以被平台屏蔽…

软件开发团队的护网低成本应对方案

主题&#xff1a; 1、攻击方技术手段说明&#xff0c;结合攻击队手段重点关注的防御点介绍&#xff1b; 2、防守方&#xff08;软件开发团队&#xff09;的低成本应对思路&#xff1b;系统是如何被攻破的 攻防演练&#xff08;APT&#xff09;攻击路径 未知攻&#xff0c;焉知…

关于Prompt Engineering你该了解啥?OpenAI应用研究负责人帮你梳理了

‍来源 | 机器之心 微信号&#xff1a;almosthuman2014 随着 ChatGPT、GPT-4 等模型的兴起&#xff0c;人们对如何创建提示以获得想要的输出越来越感兴趣。研究者对特定提示的响应可能很难预测&#xff0c;并且会因模型的不同而不同。本文来自 OpenAI 的翁丽莲&#xff08;Lili…

Go官方指南(五)并发

Go 程 Go 程&#xff08;goroutine&#xff09;是由 Go 运行时管理的轻量级线程。 go f(x, y, z) 会启动一个新的 Go 程并执行 f(x, y, z) f, x, y 和 z 的求值发生在当前的 Go 程中&#xff0c;而 f 的执行发生在新的 Go 程中。 Go 程在相同的地址空间中运行&#xff0c…

一文看懂数据分析必备计算功能—内存计算

各位数据的朋友&#xff0c;大家好&#xff0c;我是老周道数据&#xff0c;和你一起&#xff0c;用常人思维数据分析&#xff0c;通过数据讲故事。 接下来&#xff0c;我们准备讲一系列的奥威BI软件的内存计算在各种分析场景中的应用。在正式开讲之前&#xff0c;我先简单说一下…

SignalR实现简单的Web端实时通讯,跳过WebSocket验证,Swagger加锁后不能访问接口,Script setup不支持动态绑定

版本.Net6Vue3Element-Plus 问题 Swagger加锁后不能访问接口 &#xff08;看第三步&#xff09;跳过WebSocket验证 &#xff08;看第四步里面&#xff09;添加自定义接受方法 &#xff08;看第四步&#xff09;不能使用 第一步、下载包 后端&#xff1a; 前端&#xff1a;…