目录

  • 一、背景
  • 二、如何创建父工程和子工程
  • 三、聚合的方式一次性打包所有项目


一、背景

  • 项目采用springcloud多模块开发(即一个父工程包含多个字工程)。
  • 将项目打包部署到服务器,每次都需要进入单个工程进行分别打包,这样做比较耗时,可以通过父子工程来实现一次性打包所有项目。

二、如何创建父工程和子工程

  • 参考此博文链接:

三、聚合的方式一次性打包所有项目

1、lz的springboot多模块项目(微服务项目)结构如下:

leancloud java多模块打包 springcloud打包_leancloud java多模块打包

2、修改父工程的pom.xml文件

  • 下图中①的部分表示:继承springboot提供的父工程,这段信息之前我是配置在子工程里面的,现在配于父工程的pom.xml文件中,子工程则不需要配置。
  • 下图中②的部分表示:父项目的基本信息,注意以pom的方式打包。
<packaging> pom</packaging>
  • 下图中③的部分表示:引入多个子工程模块名称。
  • 下图中④的部分表示:maven资源插件 扫描已leancloud java多模块打包 springcloud打包_xml文件_02结尾的所有配置。
  • leancloud java多模块打包 springcloud打包_xml文件_03

    leancloud java多模块打包 springcloud打包_leancloud java多模块打包_04

  • 父工程pom.xml文件需要的代码。
<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.3.RELEASE</version>
        <relativePath/>
    </parent>

    <groupId>com.rf.springcloud</groupId>
    <artifactId>cloud</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>cloud</name>
    <description>parent-project</description>
    <packaging>pom</packaging>

    <modules>
        <module>eureka-server</module>
        <module>cloud-zuul</module>
        <module>cloud-system</module>
    </modules>
    
	 <build>
    <!--maven资源插件 扫描已$开头,已$结尾的所有配置-->
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <configuration>
                <delimiters>
                    <delimiter>
                        $
                    </delimiter>
                </delimiters>
            </configuration>
        </plugin>
    </plugins>
</build>

3、修改子工程的pom.xml文件(lz以eureka-server子模块为例)

  • 下图中①的部分表示:继承项目的父工程。
  • 下图中②的部分表示:子工程的基本信息,注意以jar的方式打包。
<packaging>jar</packaging>
  • 下图中③的部分表示:需在各个子工程中添加打包插件,这个插件主要是构建可执行的jar。
  • 子工程pom.xml文件需要的代码。
<parent>
        <groupId>com.rf.springcloud</groupId>
        <artifactId>cloud</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>
    
    <artifactId>eureka-server</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>
    <description>注册中心</description>
    
 	<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

4、开始打包

  • idea开发工具右侧依次点击【maven】——>【父工程名称】——>【clean】,输出BUILD SUCCESS即表示【clean】操作成功。
  • idea开发工具右侧依次点击【maven】——>【父工程名称】——>【install】,父工程和三个子工程都输出SUCCESS,最后出现BUILD SUCCESS,即表示【install】操作成功。
  • 此时,在每个子工程taget下都会生成一个jar包,这就算大功告成啦~~~