美文网首页java 脑洞
java脑洞 springboot 瘦身之路

java脑洞 springboot 瘦身之路

作者: 灰色调诺言 | 来源:发表于2019-05-30 10:36 被阅读0次

脑洞的由来

场景一:微服务部署,每个微服的包体都几十M,而且每个微服包体之间都有大量重复jar包

功能需求

比如当前项目是lp-spring-web,打包出来的包体是lp-spring-web.jar

  1. lp-spring-web.jar 只包含项目的字节码文件,也就只有class文件,而没有lib文件
  2. lp-sping-web项目依赖的jar包需要一份完整copy在lp-spring-web.jar外

Git地址

https://gitee.com/wqrzsy/lp-demo/tree/master/lp-spring-web

更多demo请关注

springboot demo实战项目
java 脑洞
java 面试宝典
开源工具

功能实现

    <build>
        <plugins>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <executions>
                    <execution>
                        <id>copy-dependencies</id>
                        <phase>package</phase>
                        <goals>
                            <goal>copy-dependencies</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>target/lib</outputDirectory>
                            <excludeTransitive>false</excludeTransitive>
                            <stripVersion>false</stripVersion>
                            <includeScope>runtime</includeScope>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <layout>ZIP</layout>
                    <includes>
                        <include>
                            <groupId>non-exists</groupId>
                            <artifactId>non-exists</artifactId>
                        </include>
                    </includes>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                        <configuration>
                            <classifier>classes</classifier>
                            <attach>false</attach>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

        </plugins>
    </build>

执行 mvn package 后

image.png image.png

我们打开lib文件夹就会看到相关依赖的jar包都在里面


image.png

测试

我们写一个bat来测试下是否成功

java -jar -Dloader.path=./target,./target/lib  ./target/lp-spring-web-0.0.1-SNAPSHOT.jar

PS: 路径可自行修改


image.png

运行run.bat 后就会看到项目已正常启动


image.png

demo项目导入

参考: https://www.jianshu.com/p/cd0275a2f5fb

公众号

五分钟了解前沿技术,大数据,微服务,区域链,提供java前沿技术干货,独立游戏制作技术分享

五分钟技术

如果这篇文章对你有帮助请给个star


image.png

相关文章

  • java脑洞 springboot 瘦身之路

    脑洞的由来 场景一:微服务部署,每个微服的包体都几十M,而且每个微服包体之间都有大量重复jar包 功能需求 比如当...

  • springboot jpa hibernate 属性列表

    更多demo请关注 springboot demo实战项目java 脑洞java 面试宝典 Hibernate属性...

  • java脑洞 shiro+jwt 安全权限框架技术选型

    更多demo请关注 springboot demo实战项目java 脑洞java 面试宝典开源工具 1.Shiro...

  • 李笑来73韭菜节的一些小感想

    最大的感想是开了我的脑洞,关于自主构建etf的脑洞。 之前读《财富自由之路》中对定投BAT的相关描述总是有不理解,...

  • springboot入门之路(二)

    springboot入门之路(二) 继springboot入门之路(一)连续的学习渐进之路。阅读springboo...

  • 实现人生目标,需要“人生算法”

    2018年,罗振宇的跨年演讲开了6个脑洞,“动车组脑洞”、“热带雨林脑洞”、“比特化脑洞”、“拔河脑洞”、“重...

  • 脑洞脑洞

    D12+13-精进舱-Z1039-蓝莹莹 大家好啊,我是小蓝。行船第十二+十三天,开脑洞。 下面,请跟随我进入不知...

  • 脑洞派系列全目录

    脑洞派系列全目录如下: 【脑洞派】画中的女子 【脑洞派】梦想成为简书老伯女婿 【脑洞派】高跟鞋患者 【脑洞派】什么...

  • springboot入门之路(一)

    springboot入门之路 参考文档:SpringBoot参考指南;SpringBoot实战 1.Spring ...

  • java脑洞 备忘录

    记忆力不好,持续更新 1. vue饿了么app项目实战视频 百度网盘https://download.csdn.n...

网友评论

    本文标题:java脑洞 springboot 瘦身之路

    本文链接:https://www.haomeiwen.com/subject/xyhmtctx.html