springboot 中是可以通過 jar 將整個項目打包成一個fat jar 的, 這個大家都知道.
<!-- 打包jar文件時,配置manifest文件,加入lib包的jar依賴 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <addClasspath>true</addClasspath> <classpathPrefix>lib/</classpathPrefix> <mainClass>com.cloudlinkscm.ActivemqApplication</mainClass> <useUniqueVersions>false</useUniqueVersions> </manifest> </archive> </configuration> </plugin>
除此之外, 這個好像也可以的哦:
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin>
但是, 我還是遇到了 xxx.jar 中沒有主清單屬性, 后面一排查, 原來, 運行錯了個jar, 我運行的不是fat jar ,而是普通jar, 因為它們在同一個目錄.