spring boot jar包 瘦身

1、在瘦身之前先打出一个完整的jar包,解压后将lib全部拿出来,删除非第三方的jar (删除自己项目中的依赖包)


2、获取 功能 的maven 依赖GroupIds (红色为需要保留在jar包中的groupId字符串)

mvn dependency:tree|grep -e "compile" -e "runtime"|sed 's/|//g'|sed 's/+//g'|awk '{print $3}'|awk -F ":" '{print $1,","}'|sort|uniq|grep -vE "(com.****|common-)"|xargs


3、在maven配置文件中添加  <excludeGroupIds>


4、重新打包出一个thin jar  ,运行 java -Dloader.path=lib/ -jar demo.jar

			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<fork>true</fork>
				 	<!-- mvn dependency:tree|grep -e "compile" -e "runtime"|sed 's/|//g'|sed 's/+//g'|awk '{print $3}'|awk -F ":" '{print $1,","}'|sort|uniq|grep -vE "(com.sstc.hmis|common-)"|xargs -->
					<layout>ZIP</layout>
					<excludeGroupIds>
					aopalliance,ch.qos.logback,com.alibaba,com.amazonaws,com.fasterxml,
					com.fasterxml.jackson.core,com.fasterxml.jackson.dataformat,com.fasterxml.jackson.module,
					com.fasterxml.woodstox,com.github.jsqlparser,com.github.pagehelper,
					com.google.code.findbugs,com.googlecode.javaewah,com.google.guava,com.google.inject,
					com.jcraft,commons-beanutils,commons-codec,commons-collections,commons-configuration,
					commons-lang,commons-logging,com.netflix.archaius,com.netflix.eureka,com.netflix.feign,
					com.netflix.governator,com.netflix.hystrix,com.netflix.netflix-commons,com.netflix.ribbon,
					com.netflix.servo,com.sun.jersey,com.sun.jersey.contribs,com.thoughtworks.xstream,com.trilead,
					de.regnis.q.sequence,io.netty,io.reactivex,javax.inject,javax.validation,javax.ws.rs,
					javax.xml.stream,net.java.dev.jna,net.sf.ehcache,org.antlr,org.apache.commons,
					org.apache.httpcomponents,org.apache.shiro,org.apache.tomcat.embed,org.aspectj,org.bouncycastle,
					org.codehaus.jettison,org.codehaus.woodstox,org.eclipse.jgit,org.freemarker,org.hdrhistogram,
					org.hibernate,org.jasig.cas.client,org.jboss.logging,org.jvnet,org.opensymphony.quartz,org.ow2.asm,
					org.slf4j,org.springframework,org.springframework.boot,org.springframework.cloud,
					org.springframework.security,org.tmatesoft.sqljet,org.tmatesoft.svnkit,org.yaml,stax,xmlpull,xpp3
					</excludeGroupIds>
					<mainClass>com.cloud.discovery.DiscoveryApplication</mainClass>
				</configuration>
				<executions>
					<execution>
						<goals>
							<goal>repackage</goal>
						</goals>
					</execution>
				</executions>
			</plugin>



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值