Skip to content

创建qk-parent作为父模块,删除src目录,父模块不写代码,只做配置

然后在父工程目录下创建qk-common、qk-entity、qk-management这三个子模块。

1.模块创建 ​

操作步骤如下:

  1. 创建项目父工程qk-parent,打包方式为pom,设置父工程为spring-boot-starter-parent
  2. 创建子工程qk-common,设置父工程为qk-parent
  3. 创建子工程qk-entity,设置父工程为qk-parent
  4. 创建子工程qk-management,设置父工程为qk-parent

最终的结果图如下所示:

1.1.创建父工程 ​

创建项目父工程qk-parent,删除src目录(我们的业务代码不在父工程的src中开发),设置JDK和maven仓库。

设置父工程pom.xml中的打包方式为pom,父工程为spring-boot-starter-parent,需要改动的代码如下:

java
<?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>

    <!-- 增加下面的这一行!!!-->
    <packaging>pom</packaging>

    <!-- 需要增加到父模块的配置起始点!!!-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.4.8</version>
        <relativePath/>
    </parent>
    <!-- 需要增加到父模块的配置结束点!!!-->
</project>

1.2.创建子模块qk-common ​

qk-common模块,仅仅用来管理一些通用组件、工具类,并不需要单独启动运行,所以创建一个普通的maven项目即可,不需要创建springboot项目

由于 qk-common 是 qk-parent的子模块,所以将其放在 qk-parent 下面就可以了。 选中 qk-parent 项目,右键选择new module

创建完毕后,我们可以看到qk-common已经继承了qk-parent这个父工程了。

提示

如果在maven模块指定了继承哪个父工程,并且父工程与子工程的组织名、版本一致,子工程坐标中的<groupId> <version> 是可以省略的。

1.3.创建子模块qk-entity ​

qk-entity 是 qk-parent 的子模块,所以将其放在 qk-parent 下面就可以了

该模块仅仅用来管理一些实体类,也不需要单独启动运行,所以创建一个普通的maven项目即可,不需要创建springboot项目

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>
    <parent>
        <groupId>com.cghbh</groupId>
        <artifactId>qk-parent</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>

    <artifactId>qk-entity</artifactId>

    <properties>
        <maven.compiler.source>21</maven.compiler.source>
        <maven.compiler.target>21</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

</project>

1.4.创建子工程qk-management ​

由于 qk-management 里面存储的是轻客管家这个项目的核心代码,最终是要独立运行的。所以这里我们要创建一个SpringBoot项目

在这个子工程的pom.xml文件中新增下面的这些配置,注意从起始点到结束点的这段代码加入到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">
    
	<!--增加配置的文件起始点!!!!-->
    <dependencies>
        <!--springboot web框架-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!--mysql-->
        <dependency>
            <groupId>com.mysql</groupId>
            <artifactId>mysql-connector-j</artifactId>
            <scope>runtime</scope>
        </dependency>

        <!--写测试代码的依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>


        <!--依赖common entity,这里是将公共的common、entity模块的坐标引入供后续的开发时使用,名字别写错了!!!-->
        <dependency>
            <groupId>com.cghbh</groupId>
            <artifactId>qk-common</artifactId>
        </dependency>
        <dependency>
            <groupId>com.cghbh</groupId>
            <artifactId>qk-entity</artifactId>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <!-- spring-boot-maven-plugin是 SpringBoot 专属的 Maven 打包插件 -->
                <!-- 核心作用:把你的 SpringBoot 项目打成可直接运行的 jar 包(fat jar / 可执行 jar)。-->
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
    <!--增加配置的文件结束点!!!!-->
</project>