两个独立的SpringBoot项目如何互相引用?

当你有两个独立的 Spring Boot 项目(例如 userServicedataService),并且你希望 userService 引用 dataService,你需要将 dataService 打包并安装到 Maven 仓库中,然后在 userServicepom.xml 中添加对 dataService 的依赖。

以下是具体的步骤:

1. 配置 dataService 项目

步骤 1.1:修改 dataServicepom.xml

确保 dataService 项目能够正确生成一个 JAR 文件,并将 packaging 类型设置为 jar(如果尚未设置):

xml 复制代码
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/POM/4.0.0">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.example</groupId>
    <artifactId>data-service</artifactId>
    <version>1.0.0</version>
    <packaging>jar</packaging>
    
    <!-- 其他配置 -->
</project>

步骤 1.2:打包并安装到本地 Maven 仓库

dataService 项目的根目录下运行:

bash 复制代码
mvn clean install

这会将 dataService 打包为 JAR 文件并安装到本地 Maven 仓库(通常在 ~/.m2/repository 目录下)。

2. 配置 userService 项目

步骤 2.1:修改 userServicepom.xml

userService 项目的 pom.xml 文件中添加对 dataService 的依赖:

xml 复制代码
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/POM/4.0.0">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.example</groupId>
    <artifactId>user-service</artifactId>
    <version>1.0.0</version>
    <packaging>jar</packaging>

    <dependencies>
        <dependency>
            <groupId>com.example</groupId>
            <artifactId>data-service</artifactId>
            <version>1.0.0</version>
        </dependency>
    </dependencies>
</project>

3. 确保正确的 Maven 配置

  • 本地 Maven 仓库 :在 userService 项目中使用 dataService 的 JAR 文件是从本地 Maven 仓库加载的,因此在 dataService 项目打包并安装后,userService 项目需要确保使用相同的 Maven 配置。
  • 远程仓库 :如果你使用的是远程 Maven 仓库(如 Nexus 或 Artifactory),你需要将 dataService 发布到远程仓库,然后在 userService 中引用远程仓库中的 dataService

示例说明

假设你的 Maven 项目结构如下:

复制代码
/projects
    /data-service
        /pom.xml
    /user-service
        /pom.xml

在这种情况下,data-service 需要先被打包并安装到本地 Maven 仓库,然后 user-service 可以引用这个 JAR 文件。

总结

  1. 配置 dataService :设置 packagingjar 并打包。
  2. 安装到本地仓库 :运行 mvn clean install
  3. 配置 userService :在 pom.xml 中添加对 dataService 的依赖。

通过这些步骤,你可以在不同的 Spring Boot 项目之间建立依赖关系。

相关推荐
JustHappy1 小时前
古法编程秘籍(二):什么是代码模块化?别背概念,把房间收拾明白就够了
前端·后端
小江的记录本1 小时前
【JVM虚拟机】堆内存分代模型:年轻代(Eden+Survivor)、老年代、元空间Metaspace(附《思维导图》+《面试高频考点清单》)
java·前端·jvm·后端·python·spring·面试
逍遥德3 小时前
MQTT教程详解-04.SpringBoot集成MQTT(告别手动控制)
java·spring boot·物联网·中间件·iot·iotdb
IT_陈寒5 小时前
Python闭包里藏的这个坑,差点让我加班到凌晨
前端·人工智能·后端
IT_陈寒5 小时前
Java注解空指针?这个坑我踩得莫名其妙
前端·人工智能·后端
土狗TuGou5 小时前
SQL内功笔记 · 第8篇:事务的四大特性与隔离级别
数据库·笔记·后端·sql·mysql·oracle
ZengLiangYi6 小时前
React Query + REST API 最佳实践
javascript·后端·react.js
星浩AI6 小时前
项目实战:合同智能审批 · LangGraph + HITL 人机协同方案 [有源码]
后端·langchain·agent
JavaGuide6 小时前
Codex 接入第三方模型 DeepSeek、GLM、Kimi 教程:CC-Switch 和 Codex++ 两种方案对比
后端·ai编程
ZengLiangYi6 小时前
Fastify 加 Electron:把 Web 服务嵌进桌面应用
前端·javascript·后端