在Eclipse中把java程序打包成Jar包

合集下载

Eclipse SWT应用程序项目的打包与部署

Eclipse SWT应用程序项目的打包与部署

Eclipse SWT应用程序项目的打包与部署Eclipse SWT应用程序项目的打包与部署当项目完成后接下来的就是打包发行了,应用程序(Application)项目和Eclipse插件项目(plugin)的打包是不同的,本章将分别介绍两者的打包方法,并给出实际的打包例子。

7.1 应用程序项目的打包与发行7.1.1 简介Java应用程序项目完成后是可以脱离Eclipse运行的,要运行程序先要打它打成一个JAR包,它打包的大部份方法和标准Java的AWT/SWING的打包方法一样,主要有以下几个要点l MANIFEST.MF -打包清单。

它是打包的关键性文件,主要是设置执行入口类和支持库的路径,在运行Java应用程序时是要根据此文件中给出的信息来查找入口类和支持库。

l 支持包-如果Java应用程序用到了一些Eclipse包,那么就必须将这些包也复制到程序运行目录,否则程序将无法运行。

如swt组件支持包swt.jar,jface组件支持包jface.jar。

这些包都要在MANIFEST.MF文件中设置好。

l 本地化文件-如果用到了SWT组件,则还需要将SWT的本地化文件swt-win32-3063.dll(3063是版本号)复制到程序运行目录,否则程序将无法运行。

7.1.2 打包的具体操作步骤本节将用前几章开发的SWT/JFace项目"myswt"的打包为例,来介绍打包应用程序项目的方法。

1、编辑清单MANIFEST.MF(1)Eclipse提供了用于打包项目的"导出"向导,但本例运行此向导之前先需要创建一个MANIFEST.MF清单文件,其内容如下:Manifest-Version: 1.0Main-Class: book.chapter_4.wizard_dialog.WizardDialog1 Class-Path: ./lib/swt.jar ./lib/jface.jar ./lib/runtime.jar说明:l Manifest-Version -指定清单文件的版本号l Main-Class -指定程序运行的入口类。

怎么把Java .class文件打成jar包?

怎么把Java .class文件打成jar包?

怎么把Java.class文件打成jar包?方法1:在Eclipse中可以导出JAR文件(类似于EXE文件,不过需要JAVA虚拟机支持),执行File→Export→JAR(Runable)即可。

eclipse-->右键单击一个Java Project-->Export-->Java-JARfile/Runnable JAR file//也可以是Project下的一个Package方法2:jar命令:示例1:将两个class文件存档到一个名为'classes.jar'的存档文件中:jar cvf classes.jar Foo.class Bar.class示例2:用一个存在的清单(manifest)文件'mymanifest'将foo/目录下的所有文件存档到一个名为'classes.jar'的存档文件中:jar cvfm classes.jar mymanifest-C foo/.jar用法:jar{ctxu}[vfm0Mi][jar-文件][manifest-文件][-C目录]文件名...选项:-c创建新的存档-t列出存档内容的列表-x展开存档中的命名的(或所有的〕文件-u更新已存在的存档-v生成详细输出到标准输出上-f指定存档文件名-m包含来自标明文件的标明信息-0只存储方式;未用ZIP压缩格式-M不产生所有项的清单(manifest〕文件-i为指定的jar文件产生索引信息-C改变到指定的目录,并且包含下列文件:如果一个文件名是一个目录,它将被递归处理。

清单(manifest〕文件名和存档文件名都需要被指定,按'm'和'f'标志指定的相同顺序。

ECLIPSE将引用了第三方JAR包的JAVA项目打包成JAR文件的两种方法

ECLIPSE将引用了第三方JAR包的JAVA项目打包成JAR文件的两种方法

ECLIPSE将引用了第三方JAR包的JAVA项目打包成JAR文件的两种方法在Eclipse中,我们可以使用两种方法将引用了第三方JAR包的Java项目打包成JAR文件。

下面将详细介绍这两种方法。

方法一:使用Eclipse自带的导出功能1. 在Eclipse中,右键单击项目,选择"Export"。

2. 在弹出的对话框中,选择"Java"下的"JAR file",然后点击"Next"。

3. 在"JAR File Specification"页面上,选择要导出的项目以及要导出的资源;在"Export destination"中,指定导出的JAR文件的保存路径和文件名。

4. 在"JAR Packaging Options"页面上,选择"Export generated class files and resources",确保要导出的类文件和资源都被包含在JAR文件中。

5. 在"Select the export destination"页面上,选择"Package required libraries into generated JAR",这将会将所需的第三方JAR包也包含在生成的JAR文件中。

6. 点击"Finish"完成导出。

这种方法的优点是简单快捷,只需要几个简单的步骤就可以完成打包。

但是缺点是生成的JAR文件会将第三方JAR包也放在同一个目录下,可能导致文件夹混乱。

方法二:使用Apache Maven插件打包1. 首先,确保你的项目中存在pom.xml文件,它描述了项目的依赖关系和构建配置。

2. 打开Eclipse的"Terminal"窗口,或者使用其他的命令行工具。

java打jar包的几种方式详解

java打jar包的几种方式详解

java打jar包的⼏种⽅式详解⼀、制作只含有字节码⽂件的jar包我们先来看只含有字节码⽂件,即只含有class⽂件的jar包怎么制作,这是最简单的形式1、最简单的jar包——直接输出hello最终⽣成的jar包结构META-INFHello.class⽅法步骤(1)⽤记事本写⼀个Hello.java的⽂件class Hello{public static void main(String[] agrs){System.out.println("hello");}}(2)⽤命令⾏进⼊到该⽬录下,编译这个⽂件 javac Hello.java(3)将编译后的Hello.class⽂件打成jar包 jar -cvf hello.jar Hello.class c表⽰要创建⼀个新的jar包,v表⽰创建的过程中在控制台输出创建过程的⼀些信息,f表⽰给⽣成的jar包命名(4)运⾏jar包 java -jar hello.jar 这时会报如下错误 hello.jar中没有主清单属性 添加Main-Class属性 ⽤压缩软件打开hello.jar,会发现⾥⾯多了⼀个META-INF⽂件夹,⾥⾯有⼀个MENIFEST.MF的⽂件,⽤记事本打开Manifest-Version: 1.0Created-By: 1.8.0_121 (Oracle Corporation) 在第三⾏的位置写⼊ Main-Class: Hello (注意冒号后⾯有⼀个空格,整个⽂件最后有⼀⾏空⾏),保存 再次运⾏ java -jar hello.jar ,此时成功在控制台看到 hello ,成功2、含有两个类的jar包——通过调⽤输出hello最终⽣成的jar包结构META-INFTom.classHello.class⽅法步骤(1)⽤记事本写⼀个Hello.java和⼀个Tom.java的⽂件 ⽬的是让Hello调⽤Tom的speak⽅法class Hello{public static void main(String[] agrs){Tom.speak();}}class Tom{public static void speak(){System.out.println("hello");}}(2)编译: javac Hello.java 此时Hello.java和Tom.java同时被编译,因为Hello中调⽤了Tom,在编译Hello的过程中发现还需要编译Tom(3)打jar包,这次我们换⼀种⽅式直接定义Main-Class。

java-jar命令运行jar包时指定外部依赖jar包

java-jar命令运行jar包时指定外部依赖jar包

java-jar命令运⾏jar包时指定外部依赖jar包你们都知道⼀个java应⽤项⽬能够打包成⼀个jar,固然你必须指定⼀个拥有main函数的main class做为你这个jar包的程序⼊⼝。

具体的⽅法是修改jar包内⽬录META-INF下的MANIFEST.MF⽂件。

好⽐有个叫作test.jar的jar包,⾥⾯有⼀个拥有main函数的main class:test.someClassName。

咱们就只要在MANIFEST.MF⾥⾯添加以下⼀句话:htmlMain-Class: test.someClassName⽽后咱们能够在控制台⾥输⼊java -jar test.jar便可以运⾏这个jar。

可是咱们这个项⽬须要引⽤其余第三⽅的jar包,在eclipse⾥⾯以项⽬jar包的形式引⽤了这个叫作some.jar的包,当时放在项⽬的lib⼦⽬录下,最后项⽬打包时把这个some.jar也打进来了,可是⽤java -jar执⾏这个test.jar的时候报找不到Class异常,缘由就是jar引⽤不到放在本⾝内部的jar包。

那怎么办?运⾏时将其加⼊classpath的⽅式⾏不⾏?就是在运⾏jar的同时加⼊classpath参数:javajava -classpath some.jar -jar test.jar这种⽅式是不⾏的,由于使⽤classpath指定的jar是由AppClassloader来加载,java命令加了-jar 参数之后,AppClassloader就只关注test.jar范围内的class了,classpath参数失效。

那该怎么引⽤其余的jar包呢?linux⽅法1、使⽤Bootstrap Classloader来加载这些类算法咱们能够在运⾏时使⽤以下参数:sql-Xbootclasspath:彻底取代系统Java classpath.最好不⽤。

-Xbootclasspath/a: 在系统class加载后加载。

Eclipse中将项目导出jar包,以及转化成exe的方法

Eclipse中将项目导出jar包,以及转化成exe的方法

Eclipse中将项目导出jar包,以及转化成exe文件2011-06-27 09:24一、导出jar文件:如果你的程序开发已经接近尾声了,正准备将其生成桌面可执行文件却不知道该如何操作时,你只要按照以下步骤实行即可:选中你的项目---然后右击弹出选项列表---选择Export---Java---jarfile---next---browser(选择jar的存放路径)---next---next(不管太多继续下一步)---browser(选择你程序的主类--OK)---finish;查看你存放jar的目录,是否已经生成了?如果没有你一定没按照步骤操作.二、运行jar文件:生成的jar文件你可以双击运行它,但默认情况下会以压缩包的方式打开,如果这不是你想要的结果,请右击文件---打开方式---选择java(TM)platform来运行.我想这时你应该看到了你的软件界面.先恭喜你了..三、连同第三方文件一并导出至jar文件:如果你在程序开发的时候用到了第三方提供的API或者其它附属资源,在你导出生成jar文件时你必须将第三方的文件一并导出,不然你的程序运行将达不到你想要的结果.你可以利用Fat jar插件生成jar,Fat jar 的下载地址:/projects/fjep/下载的文件是net.sf.fjep.fatjar_0.0.31.zip,解压缩后你会看到plugins文件夹中的net.sf.fjep.fatjar_0.0.31.jar文件(简称Fat jar).插件安装:把Fat jar文件拷贝到你的eclipse目录下的plugins中..重新启动你的eclipse平台,然后查看Window---preferences,弹出的窗口中有Fat jar preferences这一项则说明你已经安装成功了,没有这一项则未安装成功,需要多做如下几步操作:到你的eclipse目录下的configuration---org.eclipse.update,并删除platform.xml文件,然后重新启动eclipse.查看Window---preferences,你会发现Fat jar preferences这一项.恭喜你安装成功了.(未成功可直接去墙撞死)..用Fat jar打包:右击你的项目,选项列表中有Build Fat jar这一项,选择它,弹出的窗口你会觉得特别亲切,一目了然使用很方便,点击Browser(Main-Class选择你的主类)---next---finish(勾选你需要一起打包的资源,默认为全部勾选).瞧,jar文件就生成在你的工程项目中了.运行它,一切顺利,否则就是你编程的问题了..另:如果你不想用Fat jar来打包,有一个更快捷的方法可以帮助你,但也是有缺陷的.步骤:将你需要用到的附属文件放到你的jre安装目录下的\lib\ext目录中(安装JDK的同时也安装了jre),再通过(一、导出jar文件)的方式生成jar.这样就可以了.它有个致命的缺点就是,这样的jar文件只能在你本机可以使用,如果要在别的机子上运行必需在\lib\ext放置同样的附属资源.四、将jar文件转换成exe可执行文件:exe文件使用方便,而且还可以提高源码及资源的安全性,但同时也失去了java的初衷--跨平台性.如果你坚持要转换成exe文件,请按以下方式进行:利用exe4j这个软件转换jar文件为exe文件,exe4j下载地址:/download/exe4j/files.html,(目前最新版本为4.2)有的需要安装,有的只要解压缩即可用.我一般用安装的exe4j软件,它们没有什么区别,因此找个可以用的就行了.下载安装后,运行它,接着按步骤操作:1.运行后直接点Next.2.选择第二项“JAR in EXE mode”,之后点击Next.3.在General---Short name of your application框中输入你的应用程序的名字(随便即可),在Directories---Output directory框中输入生成exe后的保存路径,然后Next.4.在Excutable name框中输入将要生成的exe的名字,“Icon File”是应用程序显示的小图标,不选也行.继续Next.5.必须先配置Class-Path,点击+号添加文件,即jar文件,如果有用到其它资源需要把资源一起添加进去.6.General --- Main Class选择主类.7.Java Version --- Minimum version(低版本必须填写),Maximum version(高版本可以为空),如果都有填写那么高版本的值必须大于低版本的值.8.勾选Allow JREs with a beta version number以及Only allow JDKs and no JREs.接着Next.到这一步你可以直接finish.这样就把jar转换成exe文件了.你可以点击Click Here to Start the Application 按钮测试生成的文件.到这里就完毕了,对你有没有帮助呢?我想多少解决一些人的烦恼是有的..注意:exe4j是需要注册码激活的,没激活的情况下也可以用,但是在运行生成的exe文件时,会先弹出一个对话框提示该程序是由未注册的软件创建的,提示您激活。

Java打包成jar文件,以及将jar文件导出为exe文件方法汇总

Java打包成jar文件,以及将jar文件导出为exe文件方法汇总

Java打包成jar文件,以及将jar文件导出为exe文件方法汇总(图形说明)一、Java打包成jar文件方法一:用Eclipse导出jar文件注:我用的是Eclipse,但是MyEclipse也大同小异首先右键点击所要打包的工程,选择Export选项选择JAR file,点击Next在要打包的工程前打钩,如上图红色所示;选择导出文件的目的地址,如图蓝色所示,包名随意,没有特定的要求;点击Next点击Browse选择到主类所在的上一个文件夹,别忘了填写File name(随意起名即可),点击OK;点击第四幅图的下面的Browse按钮,选择主类的名字,如下图所示点击OK,即可完成打包。

运行jar文件,可将jar文件与一个批处理文件放到一个文件夹中;其中批处理文件的内容为:java -jar neme.jar(其中name为jar包的名字)批处理文件格式为.bat;双击批处理文件即可运行程序。

PS:将java工程文件打包成.exe文件我用的是一个exe4j的免费软件第一步:默认即可,直接点击Next第二步:如果有已经制作好的jar文件,选择“JAR in EXE”mode,然后点击Next第三步:红色划线框内填写工程名字,随意即可;蓝色划线框内填写打包后的exe文件输出目录第四步:如果需要导出为exe文件的是图形界面,则选择GUI application;如果要导出为exe文件的是控制台的,则选择console application;Executable name写你将要生成的exe文件的名字,Icon File可以选择生成文件的图标第五步:点击绿色的加号,出现如下所示对话框,选择archive,然后选择已经打包好的jar文件选择主类完成后如图所示第六步:最小版本填1.3,最大版本填1.6;如果只需导出的exe在装有JRE的机子上可以运行,那么一路Next下去,最后点击Finish即可;如果想要在没有装JRE的机器上运行,那么需要继续,点击Advanced Options,选择searchsequence选择Directory,点击浏览按钮,选择JRE所在的根目录,将JRE复制过来,如下图所示选择Preferred VM,选择Client hotspot VM第7、8步是一些基本配置,默认即可,第9步编译,第10步你就可以看到以下效果了好了,大功告成了~方法二:用命令生成jar文件首先编写一个清单文件,名为:MANIFEST.MFT,其代码如下:Manifest-Version: 1.0//该属性是创建可执行jar包必需的,指定的Main-Class为全路径类名(且该类必需有main方法)Main-Class:填写你的主类Created-By: 1.5.0_02 (Sun Microsystems Inc.)然后,使用如下命令生成jar文件:jar cfm 填写你要生成jar的名字.jar MANIFEST.MFT *.class其中,c表示要生成一个新的jar文件;f表示生成jar的名字;m表示清单文件的名字二、ar文件导出为可执行文件,即exe文件方法一:用j2ewiz,使用方法如下:操作步骤:1、双击j2ewiz.exe,出现软件注册窗口,点击下一步。

命令行下编译java并生成jar包(1)

命令行下编译java并生成jar包(1)

命令行下编译java并生成jar包jar文件听说过吗,没有?或者陌生!好,没关系,这就是我们的第一站:打包发布。

为什么会有这个玩意呢,首先,这是jar的全称:JavaTM Archive (JAR) file,是的,就是java 存档文件。

这有点类似zip文件,想一想它是干什么的用的呢,压缩!?没错就是要压缩,将我们原先零散的东西放到一下,重新组织,所有这些目的只有一个:方便!好了,不用管他是怎么压缩的,我们的重点是哪些是我们要压缩的(输入),还有压缩成了什么(输出),进而将它发布(部署)。

那我们的输入(要压缩的东西)主要是class文件,还有辅助的资源(这其中可能有图片,jsp文件,html文件等等)。

Jar技术在jdk1.1版本中就已存在,在1.2中又有了增强。

接下来说说jar的好处吧,这是官方的描述:安全,快速下载,压缩,猎取包,版本化包,可携。

说了这么多,我们现在开始实施。

先打开命令提示符(win2000或在运行筐里执行cmd命令,win98为DOS提示符),输入jar –help,然后回车(如果你盘上已经有了jdk1.1或以上版本),看到什么:用法:jar {ctxu}[vfm0Mi] [jar-文件] [manifest-文件] [-C 目录] 文件名…选项:-c 创建新的存档-t 列出存档内容的列表-x 展开存档中的命名的(或所有的〕文件-u 更新已存在的存档-v 生成详细输出到标准输出上-f 指定存档文件名-m 包含来自标明文件的标明信息-0 只存储方式;未用ZIP压缩格式-M 不产生所有项的清单(manifest〕文件-i 为指定的jar文件产生索引信息-C 改变到指定的目录,并且包含下列文件:如果一个文件名是一个目录,它将被递归处理。

清单(manifest〕文件名和存档文件名都需要被指定,按‘m‘ 和‗f‘标志指定的相同顺序。

示例1:将两个class文件存档到一个名为‗classes.jar‘ 的存档文件中:jar cvf classes.jar Foo.class Bar.class示例2:用一个存在的清单(manifest)文件‗mymanifest‘ 将foo/ 目录下的所有文件存档到一个名为‗classes.jar‘ 的存档文件中:jar cvfm classes.jar mymanifest -C foo/ .来个小例子试试看:我们只有一个HelloWorld,如下:public class HelloWorld{public static void main(String[] args){System.out.println(―Hi, Hello World!‖);}}我将这个java文件存到C盘跟目录下,ok,接下来,在先前打开的命令提示符下(跳转到C盘提示符下),我们输入javac HelloWorld.java,然后继续输入:jar cvf hello.jar HelloWorld.class,回车后去你的C盘看看,多了什么,没错hello.jar 。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

在Eclipse中把java程序打包成Jar
方法一:
如果自己的java project中引用了额外的jar包作为资源文件,那么需要自己去定义配置文件MANIFEST.MF,内容示例如下:
Manifest-Version:1.0
Main-Class: gobang.GobangGame
Class-Path:lib\junit.jar lib\log4j-1.2.12.jar lib\mysql-connector-java-3.1.12-bin.jar 注:Class-Path中的各个jar文件名称见是否应该有间隔符,这个本人没有验证,因为本人没有用到其他的jar
其中的Class-Path就指定了外来的jar包的位置。

请注意假设我们的项目打包好之后为project.jar,那么按照上面Class-Path的定义,就应该在project.jar的“同层”目录下建立一个lib文件夹,并将相关的jar包放在里面。

否则会出现Exception in thread “main”ng.NoClassDefFoundError的错误。

下面介绍使用Eclipse制作jar包的过程:
1.首先在Eclipse中打开项目,右键点击项目,选择“Export”;
2.选择Java/JAR file,Next;
3.select the resources to export 中可以选择你想要包含的项目文件夹,一些不必要的文件夹就无需放进去了,免得增大空间。

在可勾选的文件夹下面有四个选项:
(1).表示只导出生成的.class文件和其他资源文件
(2).表示导出选中项目的所有文件夹
(3).表示导出的jar包中包含你的源代码,如果不想泄露代码,那么就不要选这项
(4).把一些重构的信息文件也包含进去(注:这项不是很清楚!!!)
然后在Select the export destination 中选择导出的jar的路径,Next
4.上面这一页选择是否导出那些带有警告warning或者错误errors的.class文件,一般就默认,Next
5.下一步可以对项目做一些配置
(1)Genetate the manifest file 是系统帮我们自动生成MANIFEST.MF文件,如果你的项目没有引用其他的class-path,那可以选择这一项。

(2)Use existing manifest from workspace 这是选择我们自己写的.MF文件,格式如最开始所示。

(3)Seal content 要封装整个jar或者指定的包packet(这点也不清楚!!!)
(4)Main class 这里可以选择你的程序入口,将来打包出来的jar就是你这个入口类的执行结果。

最后Finish,搞定。

注:不过我在Finish之后出现了警告,不过不影响jar包。

参考文献:/view/aced09f6ba0d4a7302763a06.html。

相关文档
最新文档