在Eclipse中用Maven打包jar包--完整版
将本地的jar导入到maven本地库中
<!--手动加入库中 -->
<!-- mvn install:install-file -DgroupId=org.apache.Hadoop -DartifactId=hadoop-common
-Dversion=2.0.0-cdh4.6.0 -Dpackaging=jar -Dfile=\lib\hadoop-common-2.0.0-cdh4.6.0.jar
mvn install:install-file -DgroupId=org.apache.hadoop -DartifactId=hadoop-hdfs
-Dversion=2.0.0-cdh4.6.0 -Dpackaging=jar -Dfile=\lib\hadoop-hdfs-2.0.0-cdh4.6.0.jar -->
1. 首先搭好Eclipse和Jdk环境
2. 在Eclipse中安装Maven插件
打开help-->Eclipse Marketplace-->Popular 前几个里面就有一个Maven Integration for Eclipse点击install

3. 新建Maven项目



Group Id是包名,Artifact Id 是项目名,点击finish就生成了项目。
pom.xml是其配置文件。main/Java是主要程序
建好项目后点击Maven install,
成功后,刷新target文件夹,已经不为空了,其中.jar文件正是生成的jar文件

是不是以为已经大功告成了,但是在控制台运行这个.jar文件,出现以下错误:
这是因为没有声明哪个是入口类。
4.修改jar中的MANIFEST.MF文件
把.jar文件解压后,出现了以下的文件

把MANIFEST.MF打开后,
是这样的:
- Manifest-Version: 1.0
- Archiver-Version: Plexus Archiver
- Created-By: Apache Maven
- Built-By: ddlv
- Build-Jdk: 1.6.0_37
把它改成这样:
- Manifest-Version: 1.0
- Class-Path: lib/commons-logging-1.1.1.jar lib/log4j-1.2.17.jar lib/sqljdbc4.jar
- Main-Class: com.ctrip.bi.jdbc_tool.main.Start
- Archiver-Version: Plexus Archiver
- Created-By: Apache Maven
- Built-By: ddlv
- Build-Jdk: 1.6.0_37
添加的Class-Path这行指的是这个项目里有引用外部jar包,要指明jar包的位置
添加的Main-Class这行指的是这个项目的入口类。
接下去的问题就是如何把这个修改后的.MF文件用来替换.jar中的.MF文件
在把修改后的粘帖到这里,恭喜你,就大功告成了。
希望对大家有帮助,还有关于替换.MF文件的办法,我觉得有点low,如果大家知道有别的更好办法,可以一起分享。
在Eclipse中用Maven打包jar包--完整版的更多相关文章
- [DEBUG] spring boot在eclipse中用maven打包成jar访问templates报500错误
更新:打war包的话只要把html文件放在resources/templates下即可,根本不需要放外面. 配置application.yml和templates放外面这种做法,打war包确实不行. ...
- eclipse中maven项目jar包不会自动下载解决办法
Eclipse中maven从远程仓库中下载jar包有时会很慢,有些甚至进度停止不动,这个时候我们可能会终止当前下载,但是终止jar包下载后会出现一个问题,再次打开Eclipse时,你会发现提示你项目中 ...
- idea使用maven打包jar包
1.在pom.xml中加入以下内容: <?xml version="1.0" encoding="UTF-8"?> <project xmln ...
- maven打包jar包
参考http://www.cnblogs.com/justinzhang/p/4983633.html 新建jar类型的maven project (选择simple project ) 配置 < ...
- eclipse整合maven下载jar包速度慢问题解决
引用:http://blog.csdn.net/u010154380/article/details/70339538 开发过程中在pom.xml中添加pom的时候,默认是需要从中央仓库中下载,但是下 ...
- eclipse中Maven项目jar问题
eclipse中Maven项目jar包下载下来了,不然我们import是时候根本导入不进来,网上的方法都试过了,Maven仓库也清空过后重新下载过了,都解决不了. 后来发现虽然jar包是下载下来了,可 ...
- maven生成jar包
改了部分cas源码,想重新生成jar包,只好试着脱离eclipse,学了一下maven打jar包的命令,记录如下: 1.首先下载maven (请注意自己的jdk版本,如果使用maven2建议使用jdk ...
- 如何在eclipse中用maven编译
在eclipse中用maven编译的方法: 在项目中的“pom.xml”文件上点击右键,在弹出的菜单中选择“Run AS”à“Maveninstall”来编译和生成项目.如下图所示: 在编译和生成过程 ...
- maven 打jar包和war包
( 最简单的:修改pom.xml文件: <packaging>war</packaging>(如果是jar,则是&l ...
随机推荐
- 记录下docker的常用命令
常用命令: docker images:查看本地所有镜像 docker pull centos:7:从仓库中获取镜像 docker ps:列出所有正在运行的容器 docker ps -a:列出所有容 ...
- Oracle - 创建表视图等 - DDL
解锁scott: sqlplus / as sysdba; alter user scott account unlock; alter user scott identified by tiger; ...
- YTU 1005: 渊子赛马
1005: 渊子赛马 时间限制: 1000 Sec 内存限制: 64 MB 提交: 338 解决: 49 题目描述 赛马是一古老的游戏,早在公元前四世纪的中国,处在诸侯割据的状态,历史上称为&qu ...
- 并不对劲的cdq分治解三维偏序
为了反驳隔壁很对劲的太刀流,并不对劲的片手流决定与之针锋相对,先一步发表cdq分治解三维偏序. 很对劲的太刀流在这里-> 参照一.二维偏序的方法,会发现一位偏序就是直接排序,可以看成通过排序使 ...
- 《MIDINET: A CONVOLUTIONAL GENERATIVE ADVERSARIAL NETWORK FOR SYMBOLIC-DOMAIN MUSIC GENERATION》论文阅读笔记
出处 arXiv.org (引用量暂时只有3,too new)2017.7 SourceCode:https://github.com/RichardYang40148/MidiNet Abstrac ...
- NDK相关收藏【转】
http://blog.csdn.net/column/details/anidea-ndk.html [转] 作者:conowen@大钟
- 重启fpm
ps aux | grep php-fpm cat /etc/php-fpm.conf kill -USR2 `cat /run/php-fpm/php-fpm.pid
- bzoj 3784: 树上的路径【点分治+st表+堆】
参考:https://www.cnblogs.com/CQzhangyu/p/7071477.html 神奇的点分治序(或者叫点剖?).就是把点分治扫过的点依次放进队列里,然后发现,对于每一棵树摊到序 ...
- JavaScript编程艺术-第6章(JavaScript美术馆改进版)代码
基于[第4章(JavaScript美术馆)代码]进行改进(***HTML与JS分离***) (*亲测可用) HTML: JS: CSS:
- Sqlite数据库中索引的使用、索引的优缺点[转]
原文链接1 原文链接2 3. 索引的种类 1)聚集索引:表中行的物理顺序与键值的逻辑(索引)顺序相同.因为数据的物理顺序只能有一种,所以一张表只能有一个聚集索引.如果一张表没有聚集索引,那么这张表 ...