【记录】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>
相关推荐
文丑颜不良啊41 分钟前
LeetCode2021~2040题目解析
java·leetcode
bksczm1 小时前
InnoDB 行格式详解:DYNAMIC / COMPACT / COMPRESSED / REDUNDANT
java·开发语言·数据库
liangbo71 小时前
Spring系列03:Bean 的三种注册方式
java·spring
余槐i2 小时前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化
SL_staff2 小时前
制造业订单交付总在最后一刻爆雷?用结构化计划模板打通跨系统协同断点
java·开源·全栈
做科研的周师兄2 小时前
【R语言实战】MixSIAR 氢氧同位素水源解析全流程:从混合空间校验到贝叶斯 MCMC 收敛诊断(后附完整代码)
java·大数据·开发语言
有点小困9772 小时前
Spring Boot 异步任务 ClassLoader 踩坑实录:ClassNotFoundException 的诡异真相
java
aiks_yuan2 小时前
Java 正则表达式很慢怎么办:Pattern 预编译只快 2~5 倍,真正卡死线程的是回溯(JDK 8、11、17 实测)
java
用户3721574261352 小时前
C# 填写 PDF 交互式表单:文本框、复选框、单选按钮和下拉列表
java
IT枫斗者枫哥2 小时前
Java 退款请求超时,先查原单还是重试?
java·后端