博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用Maven Assembly plugin将依赖打包进jar
阅读量:7041 次
发布时间:2019-06-28

本文共 2193 字,大约阅读时间需要 7 分钟。

转:http://www.cnblogs.com/justinzhang/p/4983633.html

一个Eclipse的工程,在pom中配置了若干依赖,需要将pom中所有的依赖全部打包进一个jar包中,可以选择的方案有maven-assembly-plugin和fatjar。以前采用fatjar进行打包,但是fatjar有不少问题,

1. 最近一次更新是在09年,无法支持新版本的eclipse。

2.支持最高的jdk版本是1.7  

3. 打包速度慢(不是一般的慢)

4. 打成的jar包体积略大。

  下面是一个Eclipse的工程,其中含有不少的maven依赖包:

采用export成runnable jar包的方式是行不通的,正确做法是在工程的pom.xml文件中配置maven-assembly-plugin,pom.xml的配置如下:

4.0.0
com.cetc.di
hdfs
1.0
jar
hdfs
http://maven.apache.org
UTF-8
1.8
maven-compiler-plugin
2.3.2
1.8
1.8
maven-assembly-plugin
jar-with-dependencies
com.cetc.di.App
make-assembly
package
single
log4j
log4j
1.2.17
junit
junit
3.8.1
test
org.springframework.data
spring-data-hadoop
2.2.1.RELEASE

执行maven4MyEclipse->Update Project…

最后执行Run as->Maven build..->Select..->选择package目标。

目标执行后,可以在target目录下,找到生成的jar包:

使用Java Decompiler可以看到打包后,jar包的内容如下:

PS.在这个打包的过程中,还发现了一个和Hadoop配置相关的问题,将在中介绍。

 

你可能感兴趣的文章
基于HTML5手机登录注册表单代码
查看>>
SDUT 1124-飞跃荒野(三维BFS)
查看>>
wcf 请考虑增加操作超时
查看>>
【设计模式】简单工厂模式
查看>>
[LeetCode] Binary Tree Paths 二叉树路径
查看>>
对JAVA集合进行遍历删除时务必要用迭代器
查看>>
poj 2010 Moo University - Financial Aid(优先队列(最小堆)+ 贪心 + 枚举)
查看>>
android得知----overridePendingTransition
查看>>
pragma message任务
查看>>
统计多少个汉字与字母
查看>>
Odoo9发行说明
查看>>
最大连续子序列
查看>>
logging日志管理--将日志打印在屏幕上
查看>>
Linux下可以替代windows的软件汇总:(不断完善中)
查看>>
logback--How do I configure an AsyncAppender with code? 转载
查看>>
并发集合
查看>>
对Java内存模型即JMM的理解
查看>>
Linux libusb 安装及简单使用
查看>>
从技术经理的角度算一算,如何可以多快好省的做个app(转)
查看>>
学生——成绩表2.2
查看>>