加载中...

SpringBoot项目多模块打包


直接开始吧

  1. 先对整个项目的父工程(root)进行clean和install

image-20230314161824351

中途可能会遇到clean失败的情况,大概率是循环依赖的问题,根据报错内容自己好好检查某个模块的依赖问题

  1. 在公共模块的pom文件底部加入核心代码
<build>
    <plugins>
        <!-- 资源文件拷贝插件 -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <configuration>
                <encoding>UTF-8</encoding>
            </configuration>
        </plugin>
    </plugins>
</build>
  1. 在需要打包的模块的pom文件底部加入核心代码
    <!--打包成JAR包 -->
    <packaging>jar</packaging>

<build>
    <plugins>
        <plugin>
            <!--该插件主要用途:构建可执行的JAR -->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.xml</include>
            </includes>
            <filtering>false</filtering>
        </resource>

        <!--设置自己目录下的配置文件-->
        <resource>
            <!--下方resources的文件夹名字要和自己项目的文件夹名确认一致才行 很多人就是忽略了名字不一致 -->
            <directory>src/main/resources</directory>
            <includes>
                <include>**/*</include>
            </includes>
        </resource>
    </resources>
</build>
  1. 对需要打包的模块进行clean和packing

image-20230314162351516

  1. 去生成的target文件夹下找到jar包即可
  2. 执行java -jar jar包名即可运行

运行jar包可能会遇到项目启动报错,我这种方式是没问题的,我以前用的一种方式也没问题,但是现在又用之前那种方式就会执行jar包项目启动报错,就没再使用了。代码也贴出来吧:在需要打包的模块的pom底部加入这段代码

<!--多模块打包:只需在启动类所在模块的POM文件:指定打包插件 -->
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <!-- 指定该Main Class为全局的唯一入口 -->
                <mainClass>com.ssm.couservice.CouApplication</mainClass>
                <layout>ZIP</layout>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal><!--可以把依赖的包都打包到生成的Jar包中-->
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

文章作者: shaoshaossm
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 shaoshaossm !
评论
  目录