SpringBoot使用Maven打包時減小jar包的大小方法
阿新 • • 發佈:2020-08-23
我在沒使用maven外掛壓縮打包的時候,一個應用打包基本上100M以上,以我個人部落格中的一個管理微服務模組來說,打包成功後生成的jar就123M左右。為此我搜索了下,研究如何減少jar包體積大小的方法,不料真還找到了。
步驟總結如下:
第一步新增外掛
maven對應的微服務模組中pom.xml增加如下內容:
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <mainClass>com.springcloud.blog.admin.BlogAdminApplication</mainClass> <layout>ZIP</layout> <includes> <include> <!-- 排除所有Jar --> <groupId>nothing</groupId> <artifactId>nothing</artifactId> </include> </includes> </configuration> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
第二步執行打包命令
mvn clean install -Dmaven.test.skip=true
第三步執行jar包
java -Dloader.path="lib/" -jar blog-admin-1.0-SNAPSHOT.jar
blog-admin-1.0-SNAPSHOT.jar是我自己的應用,改成你們對應的即可。
注意事項:
在此以前必須要把lib抽取出來,lib這個資料夾主要放jar包的(微服務框架所涉及的jar檔案)。
那麼如何打出這個lib來的,只需去除第一步的外掛即可(也就是常規打包方式),常規打包抽取lib後,再通過減少jar包體積的步驟來進行打包。
通常打出的jar,以我blog-admin這個應用為例,原本打出來的是123M(沒有使用外掛),使用外掛後打包是不到2M。
本文參考資料如下:
SpringBoot使用Maven打包時減小jar包的大小方法