eclipse生成export生成jar详解
使用eclipse打jar包可能还有很多人不是很了解,今天特意测试整理一番。
打jar包有3种形式
JAR file JAR
Javadoc java文档
Runnable JAR file 可运行JAR文件

第一种生成可执行的jar:
用eclipse 的 export runable jar file (这个选项应该是后期eclipse版本才有的吧,发现网上好多介绍eclipse打jar包的文章中给出的图片都没有这个选项)
在Launch configuration:选择要打jar包的mian所在的类名,启动配置,main函数的入口类
Export destination 意思是将生成的jar包放在哪,选择一个路径
Library handing (库的管理)
第一个 提取需要的类库(以解压的形式)放到生成的 jar 文件中
用这个打出来的jar包,大小是三个选项中居中的一个
第二个 将需要的Jar库包放到生成的 jar 文件中,也就是将第三方的jar文件存放在你新生成的jar文件中,所以这个选项生成出来的文件是最小的(但往往会出现问题,可能是些路径问题吧!在下面会贴出各自的MANIFEST.MF)
第三种 将需要的库拷贝到一个子文件夹并放在生成的 jar 文件旁边(这个往往生成的总大小最大,但好像也最稳定可行)
Extract required libraries into generated JAR 抽出依赖库到生成的JAR
Package required libraries into generated JAR 打包依赖库到生成的JAR
Copy required libraries into s sub-folder next to the generated JAR 拷贝依赖库到产生JAR的子文件
第一个及第三个MANIFEST.MF
都是如下形式
而第二个确实这样的
越复杂,往往问题也就越多, 我个人喜欢第三种!
第二种生成一般的jar
执行 Export ------->JAR file
这里有几个选项:
* Export generated class files and resources 表示只导出生成的.class文件和其他资源文件
* Export all output folders for checked projects 表示导出选中项目的所有文件夹
* Export java source file and resouces 表示导出的jar包中将包含你的源代码*.java,如果你不想泄漏源代码,那么就不要选这项了
* Export refactorings for checked projects 把一些重构的信息文件也包含进去
在Select the export destination中选择导出的jar的路径:
Options:的操作
Compress the contents of the JAR file 压缩精简 jar文件的内容
Add directory entries 增加目录条目(很少人知道这个选项有什么用,其实他真的很有用!
在spring中有个这样的标签 <context:component-scan />,它可以用来自动扫描包, 但是如果在你打的jar包里要不勾选Add directory entries,那么你这个jar包,就不能spring的jar包那样 可以被扫描到)
Overwrite existing files without warning 没有警告的情况下覆盖现有的文件
Options:的操作我喜欢都勾选
点击NEXT
本页面 就是说,编译时的一些 错误警告 是否导出,
jar文件的一些描述信息是否放在工作空间中,这要看你自己的需要
如果你生成的jar 文件不是用来运行的,那么直接finish就OK 了,如果继续NEXT
这个页面 其实是用来配置一些MANIFEST.MF的信息,主要目的是生成可运行的jar,(因为以前的eclipse版本是没有export runable jar file )
其实这个页面就类似手动配置MANIFEST.MF而export runable jar file 是自动生成一个MANIFEST.MF
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a284826009/article/details/20862749
eclipse生成export生成jar详解的更多相关文章
- Java WebService接口生成和调用 图文详解>【转】【待调整】
webservice简介: Web Service技术, 能使得运行在不同机器上的不同应用无须借助附加的.专门的第三方软件或硬件, 就可相互交换数据或集成.依据Web Service规范实施的应用之间 ...
- Protobuf 文件生成工具 Prototool 命令详解
Protobuf 文件生成工具 Prototool 命令详解 简介 Prototool 是 Protobuf 文件的生成工具, 目前支持go, php, java, c#, object c 五种语言 ...
- eclipse里面构建maven项目详解(转载)
本文来源于:http://my.oschina.net/u/1540325/blog/548530 eclipse里面构建maven项目详解 1 环境安装及分配 Maven是基于项目对象模 ...
- 转:关于将Java编译过的.class文件打成jar可执行文件/JAR详解
原文链接:关于将Java编译过的.class文件打成jar可执行文件/JAR详解 如何把 java 程序编译成 .exe 文件.通常回答只有两种,一种是制作一个可执行的 JAR 文件包,然后就可以像. ...
- eclipse中export 的jar file与 runnable jar file的区别
(1)直接运行 .class的方法 java -cp . com.guangfa.demo1 , 不用加.class后缀 .-cp 是 -classpath 缩写,是指定类运行所依赖其他 ...
- 【转】Eclipse Java注释模板设置详解
Eclipse Java注释模板设置详解 设置注释模板的入口: Window->Preference->Java->Code Style->Code Template 然后 ...
- ES6 模块化(Module)export和import详解 export default
ES6 模块化(Module)export和import详解 - CSDN博客 https://blog.csdn.net/pcaxb/article/details/53670097 微信小程序笔记 ...
- POI以SAX方式解析Excel2007大文件(包含空单元格的处理) Java生成CSV文件实例详解
http://blog.csdn.net/l081307114/article/details/46009015 http://www.cnblogs.com/dreammyle/p/5458280. ...
- Java生成CSV文件实例详解
本文实例主要讲述了Java生成CSV文件的方法,具体实现步骤如下: 1.新建CSVUtils.java文件: package com.saicfc.pmpf.internal.manage.utils ...
随机推荐
- 根据不同浏览器使用不同的css文件
代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3. ...
- 简单例子快速了解事件处理和委托 event delegate
以下仅仅是用最简单的方式表示事件,实际应用可能是不同窗体之间相互通知某些操作,达到触发. 首先声明一个degate的 EventHandler 参数可以没有 一个或多个 但是触发和使用一定要匹配. 创 ...
- vs 字体
看代码看得眼疼不能不说是程序员的恶梦,那么,选择适当的字体也算是对自己的救赎吧.周末闲得无聊,在网上乱逛,搜索了一些资料整理一下给大家分享,仅作记录而已,参考使用: 1.一个编程人员痛苦的选择 一般适 ...
- Hadoop中Partition深度解析
本文地址:http://www.cnblogs.com/archimedes/p/hadoop-partitioner.html,转载请注明源地址. 旧版 API 的 Partitioner 解析 P ...
- PHP判断{函数/类/方法/属性}是否存在
1.php判断系统函数或自己写的函数是否存在 bool function_exists ( string $function_name ) 判断函数是否已经定义,例如: if(function_exi ...
- [简谈]绕过HR破门而入的求职智慧
以往我们在网上看到的非常多求职文章或指导性纲领,譬如啥自信.做功课.良好形象.华丽的简历.工作经验.口才啥的,事实上到了21世纪尤其是互联网快速发展的今天,前面这些技巧就显得无比空洞: 1.由于自信谁 ...
- /etc/vsftpd.conf配置(ftp上传)
# Example config file /etc/vsftpd.conf## The default compiled in settings are fairly paranoid. This ...
- 截短字符串的函数(JS中适用)
function cutShort(str){ if(str.length>15){ str=str.substr(0,15)+"..."; } ...
- (剑指Offer)面试题53:正则表达式匹配
题目: 请实现一个函数用来匹配包括'.'和'*'的正则表达式.模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次). 在本题中,匹配是指字符串的所有字符匹配整个模式. ...
- itext处理pdf
http://www.java2s.com/Tutorial/Java/0419__PDF/DecryptPdffile.htm