【记录】idea创建springboot多模块项目

创建maven项目后删除src文件目录

pom.xml文件修改如下:

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.bq8023</groupId>
    <artifactId>springboot-activemq</artifactId>
    <version>1.0-SNAPSHOT</version>
    
    <!-- 以下内容新增 start -->
    <name>springboot-activemq</name>
    <packaging>pom</packaging>
	<!-- end -->

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>

</project>

右键项目名,选择新建 Module

新建 Module成功后,父依赖pom.xml会自动注册新创建的Module。代码如下:

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.bq8023</groupId>
    <artifactId>springboot-activemq</artifactId>
    <version>1.0-SNAPSHOT</version>
    <!-- 创建Module成功后,自动注册生成 -->
    <modules>
        <module>queue-customer</module>
    </modules>

    <name>springboot-activemq</name>
    <packaging>pom</packaging>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>

</project>

依赖管理

有两种依赖管理方式,①使用<dependencyManagement>,②使用<dependencies>

方案一:<dependencyManagement>

依赖管理方式一:一级父项目pom.xml

父项目相当于一个依赖发布工厂,父项目统一管理依赖版本

子项目中需要的依赖,需在子项目中手动指定引入,无需指定依赖版本,无法继承父项目依赖直接使用。

xml 复制代码
    <!-- 依赖管理方式一:一级父项目pom.xml
        父项目相当于一个依赖发布工厂,父项目统一管理依赖版本
        子项目中需要的依赖,需在子项目中手动指定引入,无需指定依赖版本,无法继承父项目依赖直接使用
    -->
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
                <version>${springboot.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

方案二:<dependencies>

子项目无需手动指定依赖引入,会自动继承父依赖直接使用。

xml 复制代码
	<dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
                <version>${springboot.version}</version>
            </dependency>
        </dependencies>
相关推荐
小强库计算机毕业设计10 分钟前
SpringBoot+Vue3 学生宿舍管理系统实战
java·spring boot·后端·vue·学生宿舍管理系统
李冰然22 分钟前
深入Java集合框架:HashMap源码解析(JDK 8)
java
人道领域1 小时前
【0-1的agent进阶篇】RAG:从Embedding到检索增强生成的底层逻辑
java·embedding·agent·rag
桦说编程2 小时前
盘点并发集合里那些容易误判的行为
java·后端·性能优化
IT爱学堂3 小时前
java版数据结构和算法+AI算法和技能学习指南
java·开发语言
evans在进步3 小时前
LeetCode 394:字符串解码——Java 单栈模拟与嵌套解析详解
java·python·leetcode
AI人工智能+电脑小能手4 小时前
大白话说Java设计模式-17-装饰器模式(源码剖析篇)
java·spring·设计模式·装饰器模式·源码分析·io流
m0_547486664 小时前
《Java程序设计与实践 》全套PPT课件2026
java·开发语言
土司大王5 小时前
LeetCode hto100——字母异位词分组
java·算法·leetcode
码匠许师傅5 小时前
【C++ 面试真题】聊聊 C++ 中的 lambda 表达式
java·c++·面试