1. 程式人生 > 實用技巧 >Spring Boot package打包失敗

Spring Boot package打包失敗

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-jar-plugin:3.2.0:jar (default-jar) on project demo: Execution default-jar of goal org.apache.maven.plugins:maven-jar-plugin:3.2.0:jar failed: A required class was
missing while executing org.apache.maven.plugins:maven-jar-plugin:3.2.0:jar: org/apache/maven/shared/io/logging/MessageSink

Spring Boot專案直接執行主類可以但是打包jar時失敗。

翻閱了很多部落格大都是缺少依賴包或將JAVA_HOME設為JRE的問題,參照他們的思路並沒有解決錯誤。

問題:此次問題出現的原因是 src\main\java 下放置了兩個根目錄不同的package導致打包時找不到@SpringBootApplication入口類。

結論:在pom.xml中指明mainClass的完全限定類名。

 1     <build>
 2         <plugins>
 3             <plugin>
 4                 <
groupId>org.springframework.boot</groupId> 5 <artifactId>spring-boot-maven-plugin</artifactId> 6 </plugin> 7 <plugin> 8 <groupId>org.apache.maven.plugins</groupId> 9 <artifactId>
maven-jar-plugin</artifactId> 10 <version>3.1.1</version> 11 <configuration> 12 <archive> 13 <manifest> 14 <mainClass>XXX.XXX.XXX</mainClass> 15 </manifest> 16 </archive> 17 </configuration> 18 </plugin> 19 </plugins> 20 </build>