Spring boot 打包瘦身方法

背景

  随着spring boot 的流行、越来越多的来发着选择使用spring boot 来发 web 应用、 不同于传统的 web 应用 需要 war 包来发布应用、 spring boot 应用可以把整个项目打包成一个可执行的 jar 、同时也导致 jar 越来越庞大。 对于现在高速迭代项目、上传如此庞大的 jar 对来发人员来说是一件极其痛苦的事情。 本章介绍如何将项目中变化的不大的 jar 提取到外部。

  具体步骤:

  1: 通常我们是用spring-boot-maven-plugin 进行打包、通过阅读文档发现可以通过配置使得该插件在打包时忽略特定的依赖,文档在spring-boot-maven-plugin

  2: 首先备份原先的依赖: 可以用使用 mvn dependency:copy-dependencies 首先将依赖导出。

  3: 将一些变化不大的 jar copy 到外部文件 lib 文件夹中(和 pom 文件中配置对应  )

  4: 修改 pom 文件 如下:

  

          <build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
                                    <layout>ZIP</layout>
                                    <!--去除在生产环境中不变的依赖-->
                                    <excludeGroupIds>
                                         org.springframework.boot,
                                         org.springframework,
                                         org.springframework.data,
                                         org.apache.tomcat.embed
                                   </excludeGroupIds>
                                </configuration>
			</plugin>
		</plugins>
	</build>

  注:layout 必须是 ZIP 、 excludeGroupIds 中时忽略也是就需要打在外部的 jar 、 根据自己项目的情况进行配置

5: 项目启动 将 项目的 jar 和 刚创建的 lib 放在同级目录下(不是必须的)。

6: 启动项目: java -Dloader.path="lib/" -jar xx.jar

好了到这基本就结束了、如有问题欢迎指出。

时间: 2024-08-07 20:15:13

Spring boot 打包瘦身方法的相关文章

spring boot打包以及centos下部署

spring boot打包以及部署 一.打包 springboot的打包方式有很多种.有打成war的,有打成jar的,也有直接提交到github,通过jekins进行打包部署的.这里主要介绍如何打成jar进行部署.不推荐用war,因为springboot适合前后端分离,打成jar进行部署更合适. 需要在pom.xml中增加主程序入口 <build> <plugins> <plugin> <groupId>org.springframework.boot<

spring/boot 打包,资源/配置/业务文件分离

spring/boot打包,将业务jar包和资源配置文件进行分离打包,打包后的资源在target/release文件夹下面 注意:添加以下配置后,注意修改自己的入口类 <!--相关编译打包依赖--> <build> <plugins> <!--打包jar--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-p

Spring boot打包为可部署在tomcat下运行的war文件的方法(使用Gradle、Intellij IDEA)

使用Gradle: dependencies { compile("org.springframework.boot:spring-boot-starter-web") providedCompile("org.springframework.boot:spring-boot-starter-tomcat")//此处使用providedCompile,则生成的jar包可放入tomcat内运行// compile("org.springframework.b

win7系统瘦身方法,C盘瘦身方法

WIN7用户都知道新安装的Win7系统体积占用硬盘空间比较大,一张2.4G左右的光盘装出来的系统小则6-7G多则12-13G(虚拟内存页面文件视内存容量而定),Win7是否天生就这么臃肿庞大呢? 我们可以通过删除WIN7系统一些不必要的自带文件,为您的硬盘节省下不菲的空间大小呢,以下就是为WIN7瘦身的方法: 1.关闭虚拟内存 Win7占硬盘空间最大头的文件,首当其冲就是虚拟内存文件,或者叫页面文件.这个文件隐藏在C盘根目录下,文件名为pagefile.sys.Win7 系统是基于Vista的N

iOS可执行文件瘦身方法

缩减iOS安装包大小是很多中大型APP都要做的事,一般首先会对资源文件下手,压缩图片/音频,去除不必要的资源.这些资源优化做完后,我们还可以尝试对可执行文件进行瘦身,项目越大,可执行文件占用的体积越大,又因为AppStore会对可执行文件加密,导致可执行文件的压缩率低,压缩后可执行文件占整个APP安装包的体积比例大约有80%~90%,还是挺值得优化的.下面介绍一下在研究可执行文件过程中发现的可以优化的点.研究的过程使用了linkmap,linkmap的介绍跟生成可以参考另一篇文章—iOS可执行文

spring boot打包,依赖、配置文件分离,拷贝启动脚本

一.最终打包的目录结构 二.项目结构 三.开始 1.最终打包的目录,可根据自己需要修改. <properties> <mzservice.path>${project.build.directory}/mzservice</mzservice.path> </properties> 2.配置清理插件,每次打包前,清理之前生成的打包目录. <plugin> <artifactId>maven-clean-plugin</artif

Spring boot打包war包

1.设置打包的类型(war/jar) 在pom.xml里设置 <packaging>war</packaging> 2.移除嵌入式tomcat插件 //在pom.xml里找到spring-boot-starter-web依赖节点,将<exclusions></exclusions>之间的内容删除 <dependency> <groupId>org.springframework.boot</groupId> <art

Android APK瘦身方法小结

众所周知,APP包体的大小,会影响推广的难度,用户不太喜欢下载太大的APP,同类型同等功能的APP中往往是包体小的更受用户的青睐,所以降低包体是一项非常必要的事情,也是最近公司的APP需要降低包体,所以总结下自己知道的降低包体的方法. 一. 压缩图片 基本每个APP都需要用到相当多的图片,而这些图片在包体中了占据了不少的空间,特别是有些图片大小到达上百k的,加几张就吃不消,所以要对图片进行一定程度的压缩,这里推荐一个网站 --- TinyPng,TinyPNG 是一个图片压缩网站,在上面压过的图

spring boot打包

1.application继承SpringBootServletInitializer 2.去掉项目中多余的main方法 3.将pom.xml打包改为war包 4. 在项目目录下执行   mvn package -Dmaven.test.skip=true target目录下就会存在xxx.war包    将其放在tomcat的webapps目录下即可 原文地址:https://www.cnblogs.com/helloDuo/p/9746809.html