java maven fatjar_[转] maven打包可运行的fat-jar的简单方法

[From] https://blog.csdn.net/tearsky253/article/details/75948721

问题

在使用“mvn package”命令编译application之后,生成的.jar文件不能直接被“java -jar”命令运行,一般都是因为:

1. Manifest中没有主清单属性。

2. 依赖项在.jar文件中不存在。

这两个问题可以通过在pom.xml中增加build plugin来解决。

方法1

使用maven-assembly-plugin来打包fat-jar。

假设我们的application的Main Class是practice.spring.sprice.App,那么我们需要在pom.xml中增加如下一段:

maven-assembly-plugin

3.0.0

practice.spring.sprice.App

jar-with-dependencies

make-assembly

package

single

这种方法打包出来的.jar中:

1. practice.spring.sprice.App会被作为主类。

2. 包含所依赖的所有jar的内容(这些jar包会被解开)。

方法2

使用spring-boot-maven-plugin来打包fat-jar。

在pom.xml中增加如下一段:

org.springframework.boot

spring-boot-maven-plugin

1.5.6.RELEASE

repackage

这种方法打包出来的.jar中:

1. org.springframework.boot.loader.JarLauncher会被作为主类,它会自动调用应用程序中的main方法。

2. 包含所依赖的所有的jar包(这些jar包不会被解开)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值