SpringBoot Jar 包太大 瘦身 【终极版】

思路,将依赖的第三方jar包,移到启动jar包个面

SpringBoot Jar 包太大 瘦身 【初试】简单应用

SpringBoot Jar 包太大 瘦身 【终极版】,建议使用这种方式,如果是docker,通过映射的方式,不要将 lib 打到镜像里面

1.导出 依赖的 jar 包

可以通过解压工具,对 jar 进行解压,复制出 lib 下的依赖jar 包,或者用 maven 命令复制,如下:

mvn dependency:copy-dependencies -DoutputDirectory=D:OpenSourceNettyVipIMlib  -DincludeScope=runtime

 

修改POM 去除依赖,重新打包

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <layout>ZIP</layout>
                    <includes>
                        <!--先去除所有的jar包-->
                        <include>
                            <groupId>nothing</groupId>
                            <artifactId>nothing</artifactId>
                        </include>
                        <!--将需要的JAR包保留,如:项目中的 Base 模块等-->
                        <include>
                            <groupId>cn.hutool</groupId>
                            <artifactId>hutool-all</artifactId>
                        </include>
                    </includes>
                </configuration>
            </plugin>
        </plugins>
    </build>

 运行:通过 loader.path 加载 lib 下的依赖jar

$ java -Dloader.path=D:OpenSourceNettyVipIMlib -jar ./nacos-im-server-1.0.jar

原文地址:https://www.cnblogs.com/vipsoft/p/15218980.html