maven多模塊打包注意事項(xiàng)詳解
1、說(shuō)明
項(xiàng)目開(kāi)發(fā)過(guò)程中,我們會(huì)構(gòu)建多模塊maven工程。例如結(jié)構(gòu)如下springboot工程。其中,綠色模塊需要構(gòu)建成可執(zhí)行.jar包文件,紅色模塊是底層抽象模塊被綠色模塊引用。

- 執(zhí)行maven打包,idea終端切換到goon-dance目錄執(zhí)行命令:
mvn clean package -Dmaven.test.skip=true
2、注意事項(xiàng)
(1) 最外層pom(上圖中goon-dance層級(jí))不需要配置maven插件信息。配置也只能配置<pluginManagement>信息。
....
<!--swagger3-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>${swagger.version}</version>
</dependency>
</dependencies>
</dependencyManagement>(2)被引用的紅色模塊pom文件也不需要配置maven插件信息。
(3)當(dāng)最外層pom中繼承:spring-boot-starter-parent時(shí),只需要在打包成可執(zhí)行文件的pom中添加spring-boot-maven-plugin插件即可
- goon-dance 中的pom
<!--springboot版本-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.7.RELEASE</version>
</parent>- goon-dance-admin的pom文件,不要手動(dòng)添加指定可執(zhí)行文件mainClass文件路徑,否則生成的
jar包在執(zhí)行時(shí)候提示:jar包沒(méi)有主清單屬性。
<build>
<plugins>
<!--使用springboot集成的maven插件-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
<!-- <configuration>-->
<!-- <mainClass>com..sdc.SdcWebApplication</mainClass>-->
<!-- <skip>true</skip>-->
<!-- </configuration>-->
<!-- <executions>-->
<!-- <execution>-->
<!-- <id>repackage</id>-->
<!-- <goals>-->
<!-- <goal>repackage</goal>-->
<!-- </goals>-->
<!-- </execution>-->
<!-- </executions>-->
</plugin>
</plugins>
</build>(4)當(dāng)最外出pom的parent是自定義的。則需要配置運(yùn)行的mainClass類(lèi)文件。以及配置插件的<goals>屬性。
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
<configuration>
<mainClass>com.pousheng.sdc.SdcWebApplication</mainClass>
<skip>true</skip>
</configuration>
<executions>
<execution>
<id>repackage</id>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>以上就是maven多模塊打包注意事項(xiàng)詳解的詳細(xì)內(nèi)容,更多關(guān)于maven多模塊打包注意事項(xiàng)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
基于SpringBoot+FFmpeg+ZLMediaKit實(shí)現(xiàn)本地視頻推流
文章介紹了如何在服務(wù)器上安裝和配置ZLMediaKit和FFmpeg,以及如何使用SpringBoot實(shí)現(xiàn)視頻推流和播放功能,包括環(huán)境準(zhǔn)備、后端實(shí)現(xiàn)和使用說(shuō)明,涵蓋了推流和播放的完整流程,需要的朋友可以參考下2025-11-11
SpringBoot+Redis隊(duì)列實(shí)現(xiàn)Java版秒殺的示例代碼
本文主要介紹了SpringBoot+Redis隊(duì)列實(shí)現(xiàn)Java版秒殺的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06
Java 普通代碼塊靜態(tài)代碼塊執(zhí)行順序(實(shí)例講解)
下面小編就為大家?guī)?lái)一篇Java 普通代碼塊靜態(tài)代碼塊執(zhí)行順序(實(shí)例講解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-08-08
java輕量級(jí)規(guī)則引擎easy-rules使用介紹
這篇文章主要介紹了java輕量級(jí)規(guī)則引擎easy-rules使用介紹,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06
spring-boot整合ehcache實(shí)現(xiàn)緩存機(jī)制的方法
spring-boot是一個(gè)快速的集成框架,其設(shè)計(jì)目的是用來(lái)簡(jiǎn)化新Spring應(yīng)用的初始搭建以及開(kāi)發(fā)過(guò)程。這篇文章主要介紹了spring-boot整合ehcache實(shí)現(xiàn)緩存機(jī)制,需要的朋友可以參考下2018-01-01
快速搭建Spring Boot+MyBatis的項(xiàng)目IDEA(附源碼下載)
這篇文章主要介紹了快速搭建Spring Boot+MyBatis的項(xiàng)目IDEA(附源碼下載),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12

