在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 ...
随机推荐
- mac下Android Studio干净卸载
1.卸载Android Studio,在终端(terminal)执行以下命令: rm -Rf /Applications/Android\ Studio.app rm -Rf ~/Library/Pr ...
- (17)会话之Cookie的使用详解
Cooke技术 1,特点 Cookie技术:会话数据保存在浏览器客户端. 2,Cookie技术核心 Cookie类:用于存储会话数据 1)构造Cookie对象 Cookie(java.lang.St ...
- 线程之间的通信socketpair【学习笔记】【原创】
平台信息:内核:linux3.1.0系统:android5.0平台:tiny4412 作者:庄泽彬(欢迎转载,请注明作者) 说明: 韦老师的安卓视频学习笔记 一.在一个进程中多个线程如何进行通信,主要 ...
- HDU4738 Caocao's Bridges —— 边双联通分量 + 重边
题目链接:https://vjudge.net/problem/HDU-4738 A network administrator manages a large network. The networ ...
- codeforces 686D D. Kay and Snowflake(dfs)
题目链接: D. Kay and Snowflake time limit per test 3 seconds memory limit per test 256 megabytes input s ...
- windows 操作系统问题的解决
浏览器之间具有较大的差异: 如果某问题只存在于某浏览器,而其他浏览器不存在此问题,则说明,问题出在该浏览器上: 或者是缓存已满:⇒ 清除缓存: 或者浏览器的兼容性问题: 1. error 1327. ...
- str函数isdigit、isdecimal、isnumeric的区别
s为字符串s.isalnum() 所有字符都是数字或者字母s.isalpha() 所有字符都是字母s.isdigit() 所有字符都是数字s.islower() 所有字符都是小写s.isupper() ...
- eoj 3507 坑爹的售票机
EOJ 3507 坑爹的售票机 问题描述 oxx 和 xjj 决定和小伙伴们一同坐船前往 Xiamen.去 Xiamen 的船票一张 p 元. 当他们满怀兴致地来到港口时发现居然只有不设找零的自动 ...
- Java-Runoob-高级教程-实例-数组:02. Java 实例 – 数组添加元素
ylbtech-Java-Runoob-高级教程-实例-数组:02. Java 实例 – 数组添加元素 1.返回顶部 1. Java 实例 - 数组添加元素 Java 实例 以下实例演示了如何使用s ...
- asp.net mvc5 使用百度ueditor 本编辑器完整示例(下)配置上传播放视频
通过 asp.net mvc5 使用百度ueditor 本编辑器完整示例(上)介绍,可以上传图片到服务器了,也可以上传小的视频文件,并且由百度编辑器自动加入html5<video>标签播放 ...