您的位置:

Spring Boot多模块打包详解

一、创建Maven多模块项目

在开始Maven多模块项目的创建之前,需要确认本地是否已安装Maven,安装方式请参考官方文档或者其他相关文档。

1、首先我们打开IDEA,选择New Project。

2、在左侧的选项中,选择Maven。

3、在右侧的选项中,选择Create from archetype,选择maven-archetype-quickstart。

4、填写GroupId、ArtifactId、Version等信息,点击Finish完成项目创建。

    <groupId>com.example.project</groupId>
    <artifactId>multi-module-project</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>pom</packaging>

5、在创建的项目中,重新创建一个Module作为我们的业务模块。

6、修改根目录的pom.xml,添加modules节点,并在其中添加刚才创建的业务模块。

    <groupId>com.example.project</groupId>
    <artifactId>multi-module-project</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>pom</packaging>
    
    <modules>
        <module>business-module</module>
    </modules>

二、添加业务模块中需要的依赖

1、修改业务模块的pom.xml,添加所需要的依赖。

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <scope>provided</scope>
        </dependency>
    </dependencies>

2、在业务模块中创建一个简单的Controller。

    @RestController
    public class HelloController {
    
        @GetMapping("/hello")
        public String hello() {
            return "Hello Spring Boot!";
        }
    }

三、Spring Boot多模块打包配置

1、修改根目录的pom.xml,添加如下配置。

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.1.8.RELEASE</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

2、在业务模块的pom.xml中添加如下配置。

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>repackage</id>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                        <configuration>
                            <classifier>exec</classifier>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

3、使用Maven进行打包,执行命令:mvn clean package。

四、查看打包后生成的文件

1、在业务模块的target目录下看到生成的jar包,其中包含依赖的库和可执行的代码。

2、在根目录的target目录下看到一个没有后缀的文件,其中包含了所有模块的可执行代码。

五、部署运行Spring Boot多模块打包项目

1、我们可以通过java -jar命令来运行打包后的可执行文件。

java -jar multi-module-project-1.0-SNAPSHOT.jar

2、也可以将可执行文件直接上传到服务器,使用nohup或者其他工具来启动Spring Boot应用。

六、总结

本文主要介绍了如何在Spring Boot项目中使用Maven创建多模块项目,以及如何使用Maven将多个模块的代码打包成一个可执行的jar文件。

通过这种方式,我们可以更好地将一个大的应用划分为多个小的模块,开发人员可以更加专注于自己的领域,同时也更容易进行部署和运维管理。