Spring Boot 项目Jar包瘦身

原文地址:Spring Boot 项目Jar包瘦身

一、瘦身前的Jar包

Spring Boot编译出来的Jar包中,磁盘占用大的,是一些外部依赖库(jar包),例如:进入项目工程根目录,执行 mvn clean install 命令,得到的Jar包,用压缩软件打开,目录结构如下:
Spring Boot 项目Jar包瘦身_第1张图片

整个项目jar包大小111 MB,但是光引入的外部依赖Jar就占了99M。因为一般情况下项目的外部依赖是不会改变的,所以可以把外部依赖独立出来。

二、方法

步骤1: 正常编译JAR包,解压出lib文件夹
POM

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-maven-pluginartifactId>
            <configuration>
                <mainClass>com.XXXApplicationmainClass>
                <layout>ZIPlayout>
            configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>repackagegoal>
                    goals>
                execution>
            executions>
        plugin>
    plugins>
build>

步骤2: 修改pom.xml配置,编译出不带 lib 文件夹的Jar包

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-maven-pluginartifactId>
            <configuration>
                <mainClass>com.MxemApplicationmainClass>
                <layout>ZIPlayout>
                <includes>
                    <include>
                        <groupId>nothinggroupId>
                        <artifactId>nothingartifactId>
                    include>
                includes>
            configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>repackagegoal>
                    goals>
                execution>
            executions>
        plugin>
    plugins>
build>

步骤3: 运行编译后的Jar包

java -Dloader.path=/path/to/lib -jar /path/to/springboot-xxx-0.0.1-SNAPSHOT.jar

备注:

  • 将/path/to/改成实际的路径。
  • -Dloader.path=lib文件夹路径

你可能感兴趣的:(Java)