首页 > 技术文章 > 标准springboot多模块结构

CoderWangEx 2021-09-10 10:27 原文

注意点:父工程和子模块都不需要编译,所以要把打包类型改为pom类型

父工程

是一个删除了src的springboot项目

  • idea的解析文件.idea和.imi
  • pom文件
  • 子模块

pom文件(主要放置1、parent依赖确定项目的版本。2、依赖统一管理)

<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <!--1、描述这个POM文件是遵从哪个版本的项目描述符-->
    <modelVersion>4.0.0</modelVersion>

    <!--2、添加parent标签,表示这是一个springboot项目-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.5.4</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <!--3、项目信息,注意为了不让父模块也打包成jar包或war包就需要把打包方式改为pom类型-->
    <groupId>com.wang</groupId>
    <artifactId>guli</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>pom</packaging>

    <!--4、版本参数-->
    <properties>
        <java.version>1.8</java.version>

    </properties>

    <!--5、依赖管理:统一子模块的依赖版本-->
    <dependencyManagement>
        <dependencies>

        </dependencies>
    </dependencyManagement>

</project>

子模块

一个删除了src的maven项目

  • imi文件
  • pom依赖

pom文件(主要放置子子模块会需要的依赖)

<?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">
    <!--1、父项目信息-->
    <parent>
        <artifactId>guli</artifactId>
        <groupId>com.wang</groupId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>
    <!--2、描述这个POM文件是遵从哪个版本的项目描述符-->
    <modelVersion>4.0.0</modelVersion>

    <!--3、模块信息-->
    <artifactId>service</artifactId>
    <packaging>pom</packaging>

</project>

子子模块

推荐阅读