我的项目结构
其中edu-online和edu-admin是前端项目,其他是后端模块。首先需要在父工程中添加需要打包的模块和打包依赖
如果在父工程中配置过打包依赖则子模块中不需要配置打包依赖,但是如果有子模块需要被其他模块依赖,则需要在被依赖的子模块中上加上
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<classifier>exe</classifier>
</configuration>
</plugin>
</plugins>
</build>
在父工程中的 build 要加上一下配置,打包的时候可以把除了 .java以外的文件一起打包 可根据需求自己修改
<build>
<plugins>
<plugin>
<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>
<directory>src/main/resources</directory>
<includes>
<include>*.properties</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>
然后一定要执行父工程中的 clean 和 install 指令 ,注意 如果你的子模块没有启动类或者有多个启动类会打包失败
解决办法添加启动类或者多个启动类制定一个位打包的启动类。打包成功后,应该在每个子模块的target看到 XXX-jar文件,再把每个jar包运行就可以实现springcloud项目的打包发布