springboot 瘦身部署

  • 2020-07-04
  • 浏览 (190)

为什么部署要瘦身

springboot默认使用fatjar的方式打包,把整个依赖的jar包都打包进去。

不过依赖的jar比较大,变动很小,这样每次部署都整个发布,网速不好花的时间就会比较多。

可以把依赖的jar包独立出来。

获取依赖的jar包

mvn dependency:copy-dependencies -DoutputDirectory=/path/to/lib -DincludeScope=runtime

打包配置

修改pom.xml,添加如下配置

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <mainClass>com.seaxiang.blog.BlogAdminApplication</mainClass>
        <!-- 瘦身的jar layout 必须是 ZIP, one jar 的可以是 JAR -->
        <layout>ZIP</layout>
        <!--构建完整可执行程序,可以直接运行-->
        <executable>true</executable>
        <!-- 编译出不带 lib 文件夹的Jar包 -->
        <includes>
            <include>
                <groupId>nothing</groupId>
                <artifactId>nothing</artifactId>
            </include>
        </includes>
    </configuration>
</plugin>

执行运行命令

java -jar -Dloader.path=/path/to/lib blog-web.jar >> web.log

正文到此结束