当前位置: 首页 > 编程日记 > 正文

Eclipse生成jar文件

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

具体做法如下:
方法一:(工程没有引用外部jar包时,直接导出)

选中工程---->右键,Export...--->Java--->JAR file--->next-->选择jar file的路径及名称-->next-->next---> 选择main class--->finish.

方法2:

当工程引用了其他的外部jar时,由于eclipse不支持同时导出外部jar包的功能,所以比较麻烦一点;具体步骤如下:
生成manifest file:选中工程--->右键,Export--->Java--->JAR file--->选择jar file的路径及名称--->next--->next--->next;
此时来到了方法1中要选择main class的窗口,但这里先不选择main class,选择最上方的Generate the manifest file, 勾上Save the manifest in the workspace,在Manifest file:中输入file的名称,如/testProject/main,(其中testProject为工程名,main为manifest file的名称)点击finish,回到工程,打开刚刚生成的main,在这里要输入如下信息:
Manifest-Version: 1.0
Main-Class: com.pacong.convert.auto.propertes.ConvertAutoProperties
Class-Path: jxl.jar
其中,Manifest-Version: 1.0为刚刚自动生成的manifest版本号;
Main-Class: com.pacong.convert.auto.propertes.ConvertAutoProperties为main class所在类;
Class-Path: jxl.jar为外部jar包名称,这里是告诉导出的jar包,所要用到的外部的jar包的路径及名称。
上面都做完了就可以导出带外部jar包的jar包了,步骤如下:
选中工程--->右键,Export--->Java--->JAR file--->选择jar file的路径及名称--->next--->next--->next,这时又来到了选择main class的窗口,但这里也不选择main class,选择Use existing manifest from workspace,在Manifest file:里选择刚刚生成的main,如:/testProject/main,点击finish,到此就大功告成啦;假设生成的jar包的名称为test.jar,那么Class-Path中引入的jxl.jar要和test.jar位于同一个目录下。

这里还有一点要注意:
如果想在命令行中运行刚刚生成的jar,命令如下:
java -jar test.jar
如果在jar中有一些System.out.prinln语句,运行后想看看打印出的内容,可以用一下命令:
java -jar test.jar >log.txt
输出信息会被打印到log.txt中,当然log.txt自动生成,并位于和test.jar一个目录中。

这里也可以新建一个start.bat文件,创建后;右键---编辑,输入:java -jar test.jar >log.txt;以后直接双击start.bat即可运行test.jar啦。


此部分来自CSDN博客,转载请标明出处:http://blog.csdn.net/kanfeikanfei/archive/2009/03/25/4024304.aspx

补充:
上面第二种方法对于含有较多第三方jar文件就显得不合适,太繁琐。这时可以使用一个打包的插件:fat jar。
附:图解Fat jar的使用

Fat Jar Eclipse Plug-In是一个可以将Eclipse Java Project的所有资源打包进一个可执行jar文件的小工具,可以方便的完成各种打包任务,我们经常会来打jar包,但是eclipse自带的打jar似乎不太够用,Fat Jar是eclipse的一个插件,特别是Fat Jar可以打成可执行Jar包,并且在图片等其他资源、引用外包方面使用起来更方便。
安装方法:
1. eclipse在线更新方法:
help >software updates >Search for new features to install>new update site>
填写name 和url
name:Fat Jar
url:http://kurucz-grafika.de/fatjar,这个是FatJarUpdateSite.
2. eclipse插件安装方法:
下载,地址在http://downloads.sourceforge.net/fjep/net.sf.fjep.fatjar_0.0.27.zip?modtime=1195824818&big_mirror=0,解压后将解压出的plugins中的文件复制到eclipse中的plugins目录下,然后重启eclipse,避免Fat Jar被认不出来,在eclipse启动时使用-clean参数。
使用方法(我用的eclipse是eclipse 3.3.2,Fat Jar是net.sf.fjep.fatjar_0.0.27):

Fat Jar 打包插件,可以方便的完成各种打包任务,可以包含外部的包等 。呵呵!很好用...../,关于下载和安装就不说了,都很简单。怎么使用?、一开始我也搞了很久,网上说的都不是很详细,可以打包,但双击却运行不了。现在终于搞定了,就上来说一下。

开始:在你的工程项目里右键弹出下图:

16230015_j3PT.jpg

然后Buile Fat Jar出现下图:

16230015_LDeh.jpg

再然后就Next了,又出现下图:

16230015_pvwY.jpg

再然后就没了。在桌面上找到刚刚打包的libr.jar双击,终于成功了,酷啊!!!!

转载于:https://my.oschina.net/hokkaido/blog/57145

相关文章:

动态的管理ASP.NET DataGrid数据列

动网先锋 在ASP.NET的DataGrid数据显示控件编程中,我们有几种方式可以增加DataGrid columns。其中最常见的方法是在web forms设计器中增加,通过在控件工具箱中拖访DataGrid控件到web设计页面,然后在属性生成器中增加Columns列;还有一种方式就…

Django模型层Meta内部类详解

Django 模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性。以下对此作一总结: abstract这个属性是定义当前的模型类是不是一个抽象类。所谓抽象类是不会对应数据库表的。一般我们用它来归纳一些公共属性字段,然后继承它的子类…

ASP.NET虚拟主机的重大安全隐患

作者:秦海鹏 来自: yesky 说明:本文中所有程序均在Windows 2000 Server中文版 SP2上编译运行无误开发环境:.Net 框架1.0 Version 1.0.3705 一、ASP.NET虚拟主机存在的重大隐患 我曾经在WWW.BRINKSTER.COM申请了一个免费的…

给力!一行代码躺赚普通程序员10年薪资!

笔者这两天闲逛知乎,看到了这个帖子:匿名答题,发表于2014年,此外没有留下任何多余信息。2年躺赚200万,相当于普通程序员10年的工资。没想到Pyhon这么强大,怪不得有人说“除了不会生孩子,Python什…

Hello world!

2019独角兽企业重金招聘Python工程师标准>>> 向世界打招呼,大家好,这是我的第一篇文章,我准备在这里开博! 转载于:https://my.oschina.net/chinesedragon/blog/57259

在VMware Workstation上安装Ubuntu 16.04 Server操作系统

Ubuntu 16.04 Server的下载 http://www.ubuntu.org.cn/download/server 按空格键(Space)选中第一个ssh服务 成功!

ASP.NET中WebForm组件CheckBoxList编程

作者:马金虎 来自:yesky CheckBox选择组件是一个程序中都经常的组件。在程序设计中使用到该组件,一般都不会只使用到一个,往往是以多个此类组件的形式出现的。在ASP.NET页面中如果要使用到多个CheckBox组件,除了添加…

今晚 8 点直播 | OpenCV 20 年,首款开源软硬一体的 OAK 套件来了!

从 2000 年首个开源 OpenCV Alpha 版本,到不久前刚刚发布的 OpenCV 4.4,跨平台计算机视觉库 OpenCV 在不知不觉间已经走过了 20 个年头。相信不少 IT、AI 的从业者几乎都使用过。据 CSDN 发布的《中国AI应用开发者报告2020》显示,作为计算机视…

Linux常用压缩解压命令

1.tar基本用法:1.打包文件:tar -cvf ~/test.tar ~/test 2.打包并压缩文件:tar -zcvf ~/test.tar.gz ~/test2.解包文件:先切换到要解包到的目录,然后执行:tar -xvf ~/test.tar参数详解:-c, --cre…

第二课 , 启动 ./start-all.sh

2019独角兽企业重金招聘Python工程师标准>>> 一.安装环境 1.保持第一课的基础 2.关闭防火墙 ,node1,node2,node3 service iptables stop 3.修改conf/mapred-site.xml <configuration><property><name>mapred.job.tracker</name><value&…

ASP.NET的WebFrom组件LinkButton编程

作者&#xff1a;阿虎 来自&#xff1a;yesky 在ASP.NET的WebForm组件中的LinkButton组件也是一个服务器端的组件&#xff0c;这个组件有点类似于HTML中的&#xff1c;A&#xff1e;标识符。它的主要作用是就是在ASP.NET页面中显示一个超链接。当这个链接被按动的时候&#x…

Python再夺冠,上古语言COBOL大流行,IEEE Spectrum 2020年度编程语言排行榜出炉!...

整理 | 屠敏题图 | 东方 IC出品 | CSDN 博客领域驱动技术&#xff0c;技术鞭策领域。近日&#xff0c;IEEE Spectrum 最新发布了 2020 年年度编程语言排行榜。IEEE Spectrum 编程语言排行榜一年发布一次&#xff0c;截止到今年&#xff0c;该排行榜已经连续发布了七年。与其他榜…

NSStream线程阻塞处理

http://www.10bay.com/?p149 [[session inputStream] scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode]; 因主线程有事务要处理&#xff0c;会阻塞主线程外设事件的触发&#xff1b; 解决&#xff1a; “将socket的runloopsource添加到新开的…

Python笔记

精简&#xff0c;快速&#xff0c;并持续完善。输入与输出 >>> print(Name: %s, score: %d % (Jack, 89)) Name: Jack, score: 89>>> print(Hello, world!) #逗号连接 Hello world!a raw_input("a:") #捕获原始输入&#xff0c;返回字符串 b …

资料验证的asp.net程序

<!-------资料验证&#xff1a;天乐comezxnsina.com------------> <!-------比较简单&#xff0c;以前写的&#xff0c;若有纰漏&#xff0c;请跟我联系----------> <Html> <Body bgcolor"White"> <H3>Validator(资料验证)控制元件<…

iphone UIView的一些基本方法理解

原文链接地址&#xff1a;http://www.cocoachina.com/bbs/read.php?tid38766UIView的一些基本方法理解UIView的一些基本方法理解&#xff1a;loadView、viewDidLoad、viewDidUnload、viewWillAppear、viewWillDisappear经常使用UIView以及它的子类&#xff0c;一般对于init:&a…

收藏!美国博士明确给出Python的高效学习技巧

我见过市面上很多的 Python 讲解教程和书籍&#xff0c;他们大都这样讲 Python 的&#xff1a;先从 Python 的发展历史开始&#xff0c;介绍 Python 的基本语法规则&#xff0c;Python 的 list, dict, tuple 等数据结构&#xff0c;然后再介绍字符串处理和正则表达式&#xff0…

pl/sql中三种游标循环效率对比

pl/sql中三种游标循环效率对比 - Oracle数据库栏目 - 红黑联盟 http://www.2cto.com/database/201307/224636.html转载于:https://blog.51cto.com/yweaner/1873294

UpdateData函数(转)

UpdateData&#xff0c;顾名思义&#xff0c;是用来刷新数据的。 UpdateData(TRUE) -- 刷新控件的值到对应的变量 UpdateData(FALSE) -- 拷贝变量值到控件显示例如&#xff0c;窗口中用 DDX_Text(pDX, IDC_EDIT1, m_usercode); 将IDC_EDIT1编辑框控件与m_usercode变量做了关联&…

PEAR, PECL和Perl的区别

PEAR是PHP扩展与应用库&#xff08;the PHP Extension and Application Repository&#xff09;的缩写。它是一个PHP扩展及应用的一个代码仓库&#xff0c;简单地说&#xff0c;PEAR就是PHP的CPAN。 PECL &#xff08;PHP Extension Community Library&#xff09;&#xff0c;…

永远不要对 AI 说:“我不行!”

最近这些年&#xff0c;如果我要问什么技术最值钱&#xff0c;我想超过90%的人都会说是&#xff1a;人工智能。确实&#xff0c;随着近些年人工智能发展与普及&#xff0c;AI研发岗早已成为编程领域薪水最高的岗位之一。但扎心的是&#xff0c;一提到 AI &#xff0c;相信绝大部…

ThoughtWorks雷达上的新奇变化

与往常一样&#xff0c;ThoughtWorks技术雷达涵盖了四方面内容&#xff1a;语言与框架、平台、技术和工具&#xff0c;而且其中每个领域都会有四方面内容&#xff1a;采用、试用、评估及保留。本文列举了相关领域中较新和值得注意的内容。\\语言与框架\\采用: Ember.js由于其生…

用于时序动作提名生成任务,爱奇艺提出BC-GNN图神经网络 | ECCV 2020

时序动作提名生成任务可以从未处理的长视频中定位出包含动作内容的片段&#xff0c;对视频理解以及时序行为检测任务等有着重要的作用。随着视频数量的激增以及视频内容的丰富&#xff0c;对时序动作提名算法的关注和需求也得到巨大提升。然而目前的方法多采用先生成起止边界&a…

剖析ASP.NET下部构造

crystal译yesky(前面我已说过ASP.NET拥有全新的下部构造)当我说到全新的下部构造……我得再次强调,是全新的下部构造! 它不只 是 ASP 的一个简单变化. 在此引入收管代码(managed code)这样一个全新概念,它横贯整个视窗开发平台. 受管代码在 NGWS Runtime下运行. NGWS Runtime是…

超大磁盘分区工具parted使用介绍(一)

使用parted GNU Parted有两种运行模式&#xff1a;命令行模式和交互模式。 1&#xff0e;命令行模式的选项 当你调用命令行模式时&#xff0c;parted的语法是这样的&#xff1a; 格式1# parted [option] device 格式2# parted [option] device [command [argument]] 格式1&am…

Sea.js学习4——Sea.js的配置

可以对 Sea.js 进行配置&#xff0c;让模块编写、开发调试更方便。 seajs.config seajs.config(options) 用来进行配置的方法。 seajs.config({// 别名配置alias: {es5-safe: gallery/es5-safe/0.9.3/es5-safe,json: gallery/json/1.0.2/json,jquery: jquery/jquery/1.10.1/jqu…

SQL Server 性能基线和监控

就讲讲监控那些值&#xff0c;基线抓的是那些值。如何做告警 环境&#xff1a;windows 2008r2,sql server 2008r2 sp1 性能基线&#xff1a; cpu&#xff1a; \Processor(_Total)\% Processor Time    \Processor(_Total)\% Privileged Time \SQLServer:SQL Statistics\Bat…

ASP.NET特写

作者&#xff1a; 仙人掌工作室 创建动态Web页面的新技术已经以CLR服务为基础全部重新改写。到目前为止&#xff0c;所有.NET提供的语言都可用于编写ASP.NET页面&#xff0c;但页面的扩展名和ASP 3.0的不同。具体地说&#xff0c;简单Web页面以“.aspx”为扩展名&#xff0c…

Google出品,EfficientNet在目标检测达到最新SOTA | CVPR 2020

作者 | tanmingxing&#xff0c;rpang&#xff0c;qvl 来源 | 晓飞的算法工程笔记&#xff08;&#xff09; 介绍 目前目标检测领域&#xff0c;高精度的模型通常需要很大的参数量和计算量&#xff0c;而轻量级的网络则一般都会牺牲精度。因此&#xff0c;论文希望建立一个可伸…

存储过程和存储函数初步

2019独角兽企业重金招聘Python工程师标准>>> 存储过程和函数初步 简单的来说&#xff0c;存储过程就是一条或者多条 SQL 语句的集合&#xff0c;可视为批处理文件&#xff0c;但是其作用不仅限于批处理。 ###存储程序可以分为存储过程和函数。 MySQL 中创建存储过程…