首页 > 其他分享 >精简springboot打包后的体积,提升启动速度

精简springboot打包后的体积,提升启动速度

时间:2024-04-11 15:35:29浏览次数:24  
标签:java springboot plugin spring boot maven 精简 打包

改动之前5分钟,改动之后

[2024-04-11 13:43:37.100]
[2024-04-11 13:44:16.849]

这里涉及两个打包插件

maven-dependency-plugin和spring-boot-maven-plugin
将依赖放置单独的文件夹
 <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <version>3.1.2</version> <!-- 请根据需要使用适当的版本 -->
        <executions>
          <execution>
            <id>copy-dependencies</id>
            <phase>prepare-package</phase>
            <goals>
              <goal>copy-dependencies</goal>
            </goals>
            <configuration>
              <outputDirectory>${project.build.directory}/lib</outputDirectory>
            </configuration>
          </execution>
        </executions>
      </plugin>

  精简jar体积

 <plugin>
        <configuration>
          <includeSystemScope>true</includeSystemScope>
        </configuration>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <version>${spring-boot.version}</version>
        <executions>
          <execution>
              <id>repackage</id>
              <configuration>
                <skip>true</skip>
              </configuration>
          </execution>
        </executions>
      </plugin>

  

 

 

 

 这里的启动命令需要调整

java -cp "a.jar;lib/*" com.java.Application

  

其中com.java.Application为启动类的路径

  

标签:java,springboot,plugin,spring,boot,maven,精简,打包
From: https://www.cnblogs.com/q202105271618/p/18129338

相关文章

  • electron集成第三方视频会议(整个目录资源含exe)进来,开发/打包坑点集锦
    场景:electron做个welink那种会议功能,需要集成第三方去进入会议,需要做的是在electron里面打开这个通道对方给了一个文件夹,里面含有.exe,需要调用shell命令去打开这个exe传些参数1.把整个会议文件夹放在/resources下主要是记住三个环境变量的路径方法(因为在electron中所以得看el......
  • jar命令更新SpringBoot项目jar包里的补丁文件
    最近在因为项目依赖了太多微服务的包,所以项目经常报错,又因为在联调接口,需要经常打包,所以想直接在springboot项目的一个jar包直接加上自己的补丁,然后重新部署就行,提高效率使用压缩软件打开jar,然后往里面直接替换class文件,不过启动后,会报错Causedby:java.lang.IllegalStateExc......
  • 记录SpringBoot里JPA配置多数据源
    之前的系统是建立在mysql数据库上的,后来需求变更,需要跟教务系统对接获取教师的课表数据,在Oracle上。baidu了之后找了几篇样例,写完了。发现只能连接@Primary的数据源。思索3天后,觉得应该是系统启动时自动就将Primary的数据源加载好了,并没有根据我的bean和mapper去匹配对应的数据......
  • 基于SpringBoot+MySQL+SSM+Vue.js的餐馆订餐系统(附论文)
    演示视频基于SpringBoot+MySQL+SSM+Vue.js的餐馆订餐系统技术描述开发工具:Idea/Eclipse数据库:MySQLJar包仓库:Maven前端框架:Vue/ElementUI后端框架:Spring+SpringMVC+Mybatis+SpringBoot文字描述基于SpringBoot+MySQL+SSM+Vue.js的餐馆订餐系统(附论文),用......
  • SpringBoot应用监控
    在微服务监控与安全 / SpringActuator中已经示例了SpringBoot提供了运行时的应用监控和管理的功能,可以通过http、jmx、ssh协议进行操作。1、http微服务监控与安全 / SpringActuator中已经就示范了这种方式。但是这种方式有个缺点:对于springactuator......
  • 学习Source Generators之打包成Nuget使用
    前面我们简单的实现了一个从swagger生成实体类的Generator,在实际使用中,通过nuget包引用使用会更方便,那么本篇文章将介绍如何将Generator打包成Nuget来使用。打包Nuget这里我们将GenerateClassFromSwagger.Analysis打包成Nuget进行使用。首先需要修改项目文件。修改项目文件在......
  • 京东一面:如何在SpringBoot启动时执行特定代码?有哪些方式?
    引言SpringBoot提供了许多便捷的功能和特性,使得开发者可以更加轻松地构建强大、高效的应用程序。然而,在应用程序启动时执行一些初始化操作是至关重要的,它可以确保应用程序在启动后处于预期的状态,从而提供更好的用户体验和稳定性。在应用程序启动时执行初始化操作有许多好处。......
  • 基于SpringBoot+Vue的4S店车辆管理系统(源码+文档+部署+讲解)
    一.系统概述随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,传统管理技术已无法高效,便捷地管理信息。为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,各行各业相继进入信息管理时代,4S店车辆系统就是信息时代变革中的产物之一。任何系统都要遵循系......
  • springboot中实现异步方法
    开启配置线程池packageorg.springblade.auth.config;importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.Configuration;importorg.springframework.scheduling.annotation.EnableAsync;importorg.springframework.sch......
  • SpringBoot中application.yml引入多个YML文件
    系列文章目录文章目录系列文章目录前言前言前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。首先,你要了解SpringBoot配置文件加载顺序,加载位置(代码内,Nacos等),当然这......