Springboot 多module打包方案示例详解
Springboot 多module打包问题(依赖不存在)解决方案:
参考项目结构如下:
说明: web模块为最终的启动模块,web->service->manager->dao->entity+common
方案1(实际采用):
(1)在最外层父pom:
<build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> <resource> <directory>src/main/resources</directory> <!-- 是否过滤资源文件,替换maven属性 - 不过滤,否则过滤xlsx文件导致乱码,XSSFWork读取格式异常 --> <filtering>false</filtering> <includes> <include>**/*</include> <include>mapper/*.xml</include> </includes> </resource> </resources> </build>
(2)其他子模块POM(非Springboot启动类: common,entity,dao,manager,service):
无需指定<build/>
(3)Springboot启动类子模块POM(web):
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <mainClass>com.xxx.MxVehiclePartsApplication(此处替换为相应Springboot启动类)</mainClass> </configuration> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
执行mvn package后,可在启动模块(web)target下看到*.jar即为可执行的jar包;
方案2:
(1)在最外层父pom:
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <mainClass>com.xxx.MxVehiclePartsApplication(此处替换为相应Springboot启动类)</mainClass> </configuration> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> <resource> <directory>src/main/resources</directory> <!-- 是否过滤资源文件,替换maven属性 - 不过滤,否则过滤xlsx文件导致乱码,XSSFWork读取格式异常 --> <filtering>false</filtering> <includes> <include>**/*</include> <include>mapper/*.xml</include> </includes> </resource> </resources> </build>
(2)其他子模块POM(非Springboot启动类: common,entity,dao,manager,service):
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <classifier>exec</classifier> </configuration> </plugin> </plugins> </build>
(3)Springboot启动类子模块POM(web):
无需指定<build/>
到此这篇关于Springboot 多module打包方案的文章就介绍到这了,更多相关Springboot module打包内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
springMVC中@RequestParam和@RequestPart的区别
本文主要介绍了springMVC中@RequestParam和@RequestPart的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2024-06-06
最新评论