将JAVA打成EXE文件,同时将JRE打包,可以没有JRE的电脑上运行

合集下载

exe4J打包jar文件成exe可执行文件

exe4J打包jar文件成exe可执行文件

exe4J打包jar⽂件成exe可执⾏⽂件exe4j_6.0下载(x86\x64\注册机):打包步骤:1.打开安装好的exe4j软件,⾸先是⼀个欢迎界⾯,直接【next】2.选择【JAR in EXE mode】,然后【next】;3.需要输⼊程序的缩写名字和指明输出⽬录,就是exe的保存⽬录,然后【next】;4.指定程序的名字,设置程序的图标,注意,程序图标要⽤ico格式的图⽚;Executable type是exe程序执⾏效果,1、GUI aoolication 是只有GUI程序界⾯ 2、Console application 是打开程序并携带控制台选项“ Allow only a single running instance of the application”,勾选上之后,该exe只能运⾏⼀个;选择Redirection选项,在两个位置中可以写记录⽇志的⽂件名称,⽬录为和exe的相同⽬录;在32-bit or 64-bit来决定你⽣成的exe是32位还是64位的;Version info为版本说明。

5.我们需要添加我们的jar包,点击右边绿⾊的 “+”号,然后选择【Archive】,打开浏览⽬录,找到我们的jar包,然后选择【打开】,【ok】;main class中选择程序的⼊⼝,包含main⽅法的类VM Parameters中可以设置虚拟机的⼀下参数,-Dfile.encoding=utf-8是设置了utf-8的编码,以防中⽂乱码;6.设置JRE的最⼩最⾼版本,我们根据⾃⼰的情况设置就ok,⼩版本设置成1.5,⼤版本设置成1.8,就⾏;然后点击【Advanced Options】,选择【Search sequence】,将我们的JRE添加到软件中,这样的话,我们的代码可以在别的没有安装Java环境的电脑上运⾏;点击右边的添加,选择【Directory】,然后选择【浏览】,找到我们的JRE,然后添加;注意:软件默认的三个配置需要全部删除然后【Next】,点击左侧的【Preferred VM】,选择【Client hotspot VM】,然后【next】;7.其余的步骤我们直接默认就ok了,这样我们⽣成的exe⽂件就能正常运⾏了!8.最后在Finished中选择save,保存现在的配置之后我们的成品⽬录结构是:注意:上⽂选择 jre环境:/jre,就体现在这个地⽅,运⾏时会找到当前⽬录的jre⽂件夹,程序才能在⽆jre开发环境上正常执⾏jre⽂件夹,直接复制JDK的jre⽂件夹即可。

TheJVMfoundatJAVA_HOMEisdamaged.Pleasereinsta。。。

TheJVMfoundatJAVA_HOMEisdamaged.Pleasereinsta。。。

TheJVMfoundatJAVA_HOMEisdamaged.Pleasereinsta。

⼀、介绍
exe4j是⼀个很棒的⼯具,可以把jar包打包成exe进⾏运⾏。

他可以把jre环境和打包的exe进⾏集成,使得打包后的exe应⽤程序可以在没有安装java的机器上运⾏(前提是要把exe和jre⼀起捆绑)。

⼆、问题及解决⽅法
使⽤exe4j集成jre打包exe时,运⾏exe应⽤程序时,发现报错信息:
错误提⽰:JAVA虚拟机发现JAVA_HOME损坏,需要重装或者定义EXE4J的JAVA_HOME配置指向⼀个32位的JDK或者JRE。

原因是EXE4J在打包JAR⽂件成EXE⽂件的过程中,⾃动⽣成⽀持32位JVM的可执⾏⽂件。

解决⽅法:
1.如果你的JVM是64位的,在配置可执⾏EXE⽂件的过程中需要配置⽣成64位的,⼀定要勾上下⾯的设置;这种情况⼀般是因为电脑是64位系统,
所以安装了64位的jre,打包EXE时需要安装64位的EXE4J软件,打包⽣成的可执⾏⽂件也应该是64位的。

2.如果你的JVM是32位的,在配置可执⾏EXE⽂件的过程中不需要配置⽣成64位的,即不需要勾上下⾯的设置;这种情况⼀般是因为电脑是32位系统,
所以安装了32位的jre,打包EXE时需要安装32位的EXE4J软件,打包⽣成的可执⾏⽂件也应该是32位的。

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,出现软件注册窗口,点击下一步。

Eclipse生成EXE文件

Eclipse生成EXE文件

1.运行后直接点Next.
2.选择第二项“JAR in EXE mode”,之后点击Next.
3.在General---Short name of your application框中输入你的应用程序的名字(随便即可),在Directories---Output directory框中输入生成exe后的保存路径,然后Next.
四、将jar文件转换成exe可执行文件:
exe文件使用方便,而且还可以提高源码及资源的安全性,但同时也失去了java的初衷--跨平台性.
如果你坚持要转换成exe文件,请按以下方式进行:
利用exe4j这个软件转换jar文件为exe文件,exe4j下载地址:/download/exe4j/files.html,(目前最新版本为4.2)有的需要安装,有的只要解压缩即可用.我一般用安装的exe4j软件,它们没有什么区别,因此找个可以用的就行了.下载安装后,运行它,接着按步骤操作:
你可以利用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).
4.在Excutable name框中输入将要生成的exe的名字,“Icon File”是应用程序显示的小图标,不选也行.继续Next.
5.必须先配置Class-Path,点击+号添加文件,即jar文件,如果有用到其它资源需要把资源一起添加进去.
6.General --- Main Class选择主类.
二、运行jar文件:
生成的jar文件你可以双击运行它,但默认情况下会以压缩包的方式打开,如果这不是你想要的结果,请右击文件---打开方式---选择java(TM)platform来运行.我想这时你应该看到了你的软件界面.先恭喜你了..

exe4j 生成原理

exe4j 生成原理

exe4j 生成原理exe4j是一款功能强大的Java打包工具,可以将Java应用程序打包成可执行的EXE文件。

它的生成原理包括如下几个步骤:1. 收集项目依赖:首先,exe4j会根据用户设置的配置,收集项目所依赖的所有的Jar包和类文件。

这些依赖包括项目的自身Jar包、第三方库的Jar包以及Java运行时环境(JRE)的核心库。

exe4j会自动递归查找并将所有相关的依赖文件收集到一个目录中。

2. 配置运行环境:接下来,exe4j会根据用户的需求,配置Java运行环境的相关参数。

这些参数包括JVM的初始堆大小、最大堆大小、JVM参数等。

exe4j还可以配置应用程序的图标、文件关联等。

3. 创建包装器:exe4j会生成一个包装器,用于打包应用程序和配置JVM参数。

这个包装器是一个可执行的EXE文件,它会调用JVM来启动Java应用程序。

exe4j支持同时生成不同平台下的包装器,比如Windows平台下的EXE文件和Linux平台下的Shell脚本。

4. 打包资源文件:exe4j允许用户将应用程序所需的资源文件一并打包到最终的可执行文件中。

这些资源文件可以是配置文件、图像、音频等。

打包资源文件可以方便用户将所有的文件放在一个地方,便于应用程序的发布和部署。

5. 生成可执行文件:最后,exe4j会将上述步骤中生成的所有文件进行整合,生成最终的可执行文件。

exe4j会将所有的依赖Jar包和类文件打包到一个Jar中,然后将该Jar与包装器一起打包到可执行文件中。

通过以上的步骤,exe4j成功将Java应用程序打包成可执行的EXE文件。

这样,用户可以直接双击EXE文件来运行应用程序,而不需要通过命令行来启动。

exe4j生成原理的核心是利用了Java的可执行Jar文件的特性。

Java的可执行Jar文件是一个包含了主程序和所有依赖文件的压缩文件,可以通过Java虚拟机(JVM)来运行。

exe4j通过创建一个包装器,将Java虚拟机与Java应用程序打包到同一个可执行文件中,从而实现了将Java应用程序打包成EXE文件的功能。

如何把java程序编译成.exe文件(就是制作可执行的JAR文件包)

如何把java程序编译成.exe文件(就是制作可执行的JAR文件包)

需要注意的是,创建的 JAR 文件包中需要包含完整的、与 Java 程序的包结构对应的目录结构,就像上例一样。而 Main-Class 指定的类,也必须是完整的、包含包路径的类名,如上例的 test.Test;而且在没有打成 JAR 文件包之前可以使用 java <类名> 来运行这个类,即在上例中 java test.Test 是可以正确运行的 (当然要在 CLASSPATH 正确的情况下)。
其实不然,如果开发者能够制作一个可执行的 JAR 文件包交给用户,那么用户使用起来就方便了。在 Windows 下安装 JRE (Java Runtime Environment) 的时候,安装文件会将 .jar 文件映射给 javaw.exe 打开。那么,对于一个可执行的 JAR 文件包,用户只需要双击它就可以运行程序了,和阅读 .chm 文档一样方便 (.chm 文档默认是由 hh.exe 打开的)。那么,现在的关键,就是如何来创建这个可执行的 JAR 文件包。
`-- manifest.mf
这时候,需要到 test 目录的上级目录中去使用 jar 命令来创建 JAR 文件包。也就是在目录树中使用“==”表示的那个目录中,使用如下命令:
jar cvfm test.jar manifest.mf test
之后在“==”目录中创建了 test.jar,这个 test.jar 就是执行的 JAR 文件包。运行时只需要使用 java -jar test.jar 命令即可。
Main-Class: 可执行主类全名(包含包名)
例如,假设上例中的 Test.class 是属于 test 包的,而且是可执行的类 (定义了 public static void main(String[]) 方法),那么这个 manifest.mf 可以编辑如下:

完美实现无JVM计算机上的java程序运行

完美实现无JVM计算机上的java程序运行

完美实现JAVA程序的移植性和方便运行前言:本文主要告诉大家如何实现两个功能:①让java程序(class文件)像exe文件一样方便运行;②让java程序在没有安装java运行环境的计算机上运行。

本人曾经被这两个问题困扰良久,网上也有将java程序打包成可执行jar包甚至用第三者程序将jar包生成exe文件的说法。

很遗憾,也很惭愧,本人还是没有解决好这两个问题。

无意中发现了一个法子,简单而又实用,甚至不需要你去在计算机上设置环境变量等种种繁琐操作。

特以此分享。

一.java程序放在默认文件夹下:情况说明:此情况是说,你在写java源程序时没有使用package语句。

则源程序文件就放在默认文件夹下。

①在磁盘E上建立一个文件夹,命名为Java。

将自己计算机上的jre文件夹复制到该文件夹下。

原因说明:新建文件夹可以建在任意位置,我们写的java源程序将放在这个文件夹下。

Jre文件夹在jdk的安装目录下,里面包含了供java程序运行的平台。

我们要是想在一台没有安装JVM的计算机上运行java程序,就要将jre包随程序一起移植过去。

②新建一个txt文件,里面写java源程序代码。

③保存文件,并将文件改名为:Hello.java。

④在cmd中使用javac命令对该文件进行编译。

编译之后,java文件夹下就会多出一个Hello.class文件。

⑤在java文件夹下新建一个txt文件,具体内容如下:原因说明:jre文件夹中包含了运行java程序所需平台。

这句话的意思是调用当前目录(bat文件所在目录,这里指java文件夹所在目录)下的jre文件夹下的bin文件夹下java程序来运行当前目录下的Hello.class 文件。

注意:如果类名以小写字母开头,如hello.java下面的步骤将会出错。

建议大家写java源程序时,自定义类名以大写英文字母开头。

⑥存内容,将文件名改为以bat为后缀的名字,如:程序入口.bat⑦双击bat文件,就能看到结果。

javaSwing打包成exe可安装文件(可在无jdk环境机器上运行)

javaSwing打包成exe可安装文件(可在无jdk环境机器上运行)

先用exe4j(此处用的是4.4.4版本)将jar打包成exe可执行文件,之后用Inno Setup(此处是5.5版本)将exe文件及jre打包成可安装文件,使其可在没有java环境的机器上运行1、先将所用到的系统资源放到一个资源文件夹中,如数据库、图片、声音文件、jre等等2、将系统制作成jar包,用fatjar打包工具将系统打包,选择导出路径,选择改程序的Main 方法(如图一红框),点击next选择要导出的资源,之后到finish完成打包,将打出的jar包放到资源文件夹中(便于其后打包成可安装文件)图一3、运行exe4j软件,点击next到下一步,选择第一项Regular mod,后点击next进行下一步(如图二),上面输入工程名,可随意写,下面选择打包后的exe文件的输出路径,完成后点击next进行下一步图二4、如图三,先选择执行方式,默认是图形方式GUI application,Executable name写打包后的exe文件名称,Icon File 选择生成文件的ico图示,后面三个根据需要选择,完成后点击next进行下一步图三5、点击右边的“+”号,在弹出框中选择Archive,并选择先前导出的jar包(如图五),选中后点击OK即可,之后选择改程序的主方法,(如图六),完成后点击next进入第6步图五图六6、填入最低jre版本,最高版本可不填,选择Advanced Options 下的Search sequence选择jre,由于我们要在没有安装jre的机器上运行,故需要将jdk环境动态打包到系统中,如图七,将列表中所有项目移除,然后点击右边的“+”选择刚才在资源文件夹中放置的jre文件夹,如图八,点击OK选择,之后的效果如图九所示,点击next进入图七图八图九再从图中单击advanced options,并选择preferred VM,选择Client Hotspot VM(如图十),之后点击next进入第7步图十7、配置Splash screen ,如果不需要则选择No splash screen 即可,之后一直点击next至finish,如果出现如图十一的界面,则说明已经导出exe文件现在已经完成了exe文件的打包,此程序可在本机上直接运行,但如果想让其在没有jdk 环境的机器上运行,那么还需要利用Inno Setup 将exe文件及jre打包,下面进行这个步骤,此处用的是Inno Setup5.51、运行Inno Setup 编译器,选择脚本向导点确定进入如下界面2、点击下一步进入如下界面,输入个项信息后点击下一步3、维护下图中各项内容后点击下一步4、首先选择程序执行文件,即上面用exe4j导出的exe文件,然后点击添加文件夹,选择我们做好的资源文件夹,务必将所有需要的东西都放进去,完成后显示下图所示界面,然后点击下一步5、根据自己的需要,选择对应的项目,如下图所示,完成后继续点击下一步6、应用程序文档及安装语言的设置在此处就不作介绍了,直接进入编译设置,如下图,将个个信息维护完毕后连续点击下一步直至完成7、系统会出现如下图所示的界面,选择是进行脚本编译8、在编译完成后即可得到一个可安装文件,其后不必说了,直接安装使用。

InstallAnyWhere将Java桌面应用程序打包成可执行的exe程序且无需本机JRE

InstallAnyWhere将Java桌面应用程序打包成可执行的exe程序且无需本机JRE

如何将java应用程序(桌面应用程序),打包成可执行的exe应用程序(安装卸载),且无需本机jre?1 将工程打包成jar文件MineSweeper(右击工程)》》Export》》Java》》Runnable JAR file》》NextLaunch Configuation:选择工程主函数入口类(StartFrame)Export Destination:工程(jar包)存放路径Finish ……OK2 将导出的jar文件、工程所需要的资源文件(image或者其他文件)、工程的运行环境(JRE),拷贝到同一个文件中。

3 使用InstallAnyWhere 工具将工程打包成一个可安装运行、可卸载的exe应用程序下载地址:/soft/21747.htmlCreate New Project>> 默认…点击Save As 选择/创建即将创建的工程存放路径>>SaveNext>>输入需要创建的应用程序的相关信息Next》》Add Files 刚刚准备的所有文件Next》》Auto 自动选择工程主函数入口类,选中Icon》》应用程序使用的图标,可更改Next》》ClassPath 配置,选中jar包,Auto自动Next》》with VM 包含JRENext》》Build 开始构建exe应用程序Try IT 尝试安装打包好的exe应用程序,看看能不能运行,或者将其卸载!最终打包好的exe安装包存放路径:E:\InstallAnyWhereProject\First\First_Build_Output\Web_Installers\InstData\Windo ws\VM…有个问题就是JRE很大70-80M,导致打包好的程序也很大,虽然可能实际上你写程序很小,避免这问题就要去为你的JRE瘦身(将不需要的东西拿掉),但这过程比较复杂,有兴趣自己去试试!我这边用的是Install AnyWhere ,当然还有些其他的方式,比如EXE4J……自己去研究吧!。

使用jpackage将java程序打包成exe程序(不需要安装jdk即可运行)

使用jpackage将java程序打包成exe程序(不需要安装jdk即可运行)

使⽤jpackage将java程序打包成exe程序(不需要安装jdk即可运⾏)前⾔突然想到把java打包成windows上可以运⾏的程序,于是乎,在搜索引擎和各路博客以及官⽅⽂档的帮助下,终于实现了⽬标,虽然不算完美,但在这个过程中对maven打包过程,jdk打包jar的理解加深。

maven只是更⽅便的帮助我们打包的⼯具,于是开始尝试直接使⽤jdk打包。

接着尝试使⽤maven打包,再使⽤jpackage打包成exe安装包。

然后⼜希望打包成绿⾊版的exe(就是⽆需安装直接运⾏的),结果打包完发现⽂件太⼤,⽽且每次修改都要打包,时间太长。

尝试直接使⽤编译好的class运⾏java程序,修改完类就可以直接替换,⽆需打jar包和再次转成exe。

过程中⼜发现jpackage打包的整个⽂件有很多重复的dll⽂件,⼜发现了runtime⽂件夹。

想到使⽤jre可以直接运⾏java程序,⼜发现这些dll和jre中的⽂件⾼度重合,于是想到直接将jre和class直接打包到⼀起,使⽤脚本命令来启动java程序。

这样⼜使整个运⾏所需的⽂件夹⼤⼩直接减⼩了⼏⼗MB,打包⽂件从最开始的200+MB,最终缩⼩到了 70MB,哎,就是玩⼉。

1.安装wix 3.XX下载⼆进制包(wix311-binaries.zip)解压并添加根⽬录路径到环境变量path中(D:\Program\openjdk\wix)2.打包成便携执⾏程序()⽬录结构在空⽩处按住shift,单击右键,选择“在此处打开powershell窗⼝”执⾏.\jdk-14.0.1\bin\jpackage -i .\planewar --type app-image -n planewar --main-jar .\planewar\plane-war-1.0-SNAPSHOT.jar --vendor cy --verbose --win-console选项说明:# -i: 存放待打包资源的⽂件夹# -type: win下默认是exe,其他的有msi、app-image# -n: 打包后的程序名称# --main-jar 包含启动类(main)的jar包,如果jar包不是可执⾏的jar,则需要⼿动指定主类# --main-class ⼿动指定主类,例如: --main-class com.xxx.AppMain# --vendor 供应商信息(随便填)# --verbose 显⽰打包过程# --win-console 添加控制台输出3.打包成安装程序将需要打包的资源放进⽂件夹planewar执⾏打包.\jdk-14.0.1\bin\jpackage -i .\planewar -n planewar --main-jar .\planewar\plane-war-1.0-SNAPSHOT.jar --vendor cy --verbose --win-console --win-dir-chooser --win-shortcut选项说明:# -i 表⽰输⼊⽂件夹# -n 表⽰应⽤名称# --main-jar 指定jar包,需要jar已经指定main类,否则需要添加--main-class⼿动指定,如:--main-class com.demo.DemoApplication# --vendor 发⾏商信息# --verbose 显⽰打包执⾏过程# --win-console 使⽤控制台输出# --win-dir-chooser 选择安装位置# --win-shortcut 创建快捷⽅式#其他的选项如下:# –win-dir-chooser, 安装时添加 “选择安装路路径”# –win-shortcut, 安装后⾃动在桌⾯添加快捷键# –win-menu-group, 启动该应⽤程序所在的菜单组 (实测⽆效,但是必须有这条命令,没有–win-menu 会报311错误)# -update 2021-2-18: –win-menu-group 应该放在–win-menu 之后,否则⽆效。

java生成exe

java生成exe

编写java我用java编译helloworld.java生成.class文件,但每次想运行文件,悬赏分:20 - 解决时间:2007-6-9 15:35都要用java helloworld,不生成点击运行的exe文件,我要如何做永久生成点击运行的文件,具体步骤提问者:xs54168 - 一级最佳答案说简单一点//建一个类Test.java//再一个文本文件main.txt//main.txt中写入main-class:<空格> Test <加一个空行>//dos 到当前目录//执行jar cvfm mm.jar *.*//将生成可执行文件mm.jar 双双击运行--------------------------------------------------------有问题再看看下边的吧首先列表一下环境:D:\abc\myFrame.class(这个myFrame.class 就是我要运行的程序,当然里面必须包含有main方法啦,有一点还要申明:这个myFrame.class 里是没有打包的,也就是没有pachage 语句进行包申明)好了,开始做事吧在D:\abc 下面建立一个文件名字可以是任意的,什么阿猫,阿狗都没问题,而且有没有扩展名,也是没关系的,但你总不至于是exe 、jar 什么的吧?那你也太专牛角尖了吧,比如名字为:ddd.jjj 或fff 都没问题,我就给这个文件取名:xx.x好了现在的任务就是在你刚建立的文件里写点东西。

在里面写上:main-class:myFrame现在呢,就有N多需要注意的或不需要注意的地方了:1.main-class: 这些字呢,大小写是不区别的,但你不要给我把“-”给丢了!2.myFrame 千万不要写成myFrame.class ,而且myFrame 大小写敏感的!3.“main-class:myFrame” 这一行必须是单独一行的,而且这行不能是最后一行,文件最后留个空行,也许你什么都干得出来,你也可以不用空行,你却写上一些&U&()*^^&*%%*&^(^) 系统也懒得管你!4.最重要的,最容易忽略的,就是在main-class: 的后面必须有大于1的个数的空格,如:main-class: xx.x好了现在就开始用jar了首先打开ms-dos(开始里的运行输入cmd 回车)进入到D:\abc下面(cd d:\abc 回车)然后输入:jar cvfm mm.jar xx.x myFrame.class如: D:\abc\>jar cvfm mm.jar xx.x myFrame.class然后回车,应该就ok了!当然这个命令也可以有多种样式的写法,如:jar cvfm mm.jar xx.x *jar cvfm mm.jar xx.x *.*jar cvfm mm.jar xx.x *.class需要注意的地方是:xx.x 这个文件必须所有的要被包含的文件的前面,换句话就是必须紧跟在你要建立的jar文件名的后面,比如我这里就是mm.jar还有就是如过xx.x这个文件有扩展名就必须写上扩展名,没有就不写整行命令里面可以变动顺序的就只有你的那些要包含的程序文件(xx.x 不包含在内,它不是你的应用程序的一部分),比如你的应用程序要用到几个类(a1.class a2.class a3.class ) 命令可以这样:jar cvfm mm.jar xx.x a1.class a2.class a3.classjar cvfm mm.jar xx.x a1.class a3.class a2.classjar cvfm mm.jar xx.x a2.class a1.class a3.class......或者方便点:jar cvfm mm.jar xx.x *.class还有:cvfm 你照抄就好了不好改什么上面讲的都是没有用package 包机制的其实用包的程序也变化不大要注意的地方:比如文件位置为:D:\abc\nn\myFrame.class(myFrame.java里面开头一句是: package nn;看清楚上面我写的文件位置)你只要把nn\myFrame 看成是上面讲的myFrame 就一样了在D:\abc\>下运行jar cvfm ee.jar xx.x nn注意:1.是在abc下运行,不是在nn下!2.xx.x 文件是在abc下面,而不是在nn下面3.xx.x里面的main-class:myFrame 要换成main-class:nn/myFrame或main-class:nn.myFrame4.记得也要在main-class:........的后面行有空行或有内容的行(anything will ok)关于Java如何生成安装文件给用户的问题?悬赏分:10 - 解决时间:2007-1-13 11:41众所周知java需要JDK等运行环境才能允许?现在我用JBuilder做完了一个桌面C/S模式的应用程序只能用JBuilder运行...我如何不用再给用户去装JDK什么的给用户的时候用户只要直接点击下一步下一步就可以完成软件的安装并正常使用呢?提问者:yangxin114 - 一级最佳答案将Java应用程序本地编译为EXE的几种方法(推荐使用JOVE和JET)1. 从获得一个TowerJ编译器,该编译器可以将你的CLASS文件编译成EXE文件。

在Eclipse中将Java项目打包为jar

在Eclipse中将Java项目打包为jar

在Eclipse中将Java项目打包为jar方法一:如果自己的java project中需要引用额外的jar包作为资源文件,那么需要自己自定义配置文件MANIFEST.MF ,内容示例如下:Manifest-Version: 1.0Class-Path: lib\crimson.jar lib\jbcl.jar lib\junit.jarlib\log4j-1.2.13.jar lib\mysql-connector-java-3.1.13-bin.jarMain-Class: src.YourMainClassName其中的Class-Paht就指定了外来jar包的位置。

请注意假设我们的项目打包后为project.jar,那么按照上面的定义,应该在 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中可以选择你想要包含的项目文件夹,一些不必要的文件夹就无需放进去了,免得增大空间;这里有几个选项:∙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的路径,Next4. 下一页可以选择是否导出那些含有警告warning或者错误errors的*.class 文件。

launch4j用法 -回复

launch4j用法 -回复

launch4j用法-回复launch4j用法,一步一步回答在软件开发过程中,我们经常会需要将我们的Java应用程序打包成可执行的文件,这样方便用户在不安装Java环境的情况下直接运行程序。

launch4j是一个非常方便的工具,它能够将Java应用程序打包成Windows可执行文件,本文将一步一步地介绍launch4j的使用方法。

第一步:下载和安装launch4j首先,我们需要从launch4j的官方网站(第二步:配置launch4j1. 打开launch4j目录下的launch4j.exe文件,启动launch4j工具。

2. 在launch4j的主界面中,点击"配置"按钮,进入配置界面。

3. 在配置界面的"Basic"选项卡中,填写以下信息:- Output File: 指定可执行文件的输出路径和文件名。

- Jar: 选择需要打包的Java应用程序的jar文件。

- Main Class: 填写Java应用程序的入口类名。

- Version Info: 可以设置程序的版本信息,如程序名称、版本号等。

4. 在配置界面的"JRE"选项卡中,选择JRE的配置方式:- Bundled JRE: 可以将JRE打包到可执行文件中,这样用户无需安装Java环境。

- Minimum Version: 指定最低支持的JRE版本。

- JVM Options: 可以设置JVM的启动参数。

5. 在配置界面的"EXE"选项卡中,配置可执行文件的相关信息:- Executable: 可以设置可执行文件的文件名。

- Icon: 可以设置可执行文件的图标。

6. 在配置界面的"Header"选项卡中,可以设置可执行文件的头信息,如公司名称、版权信息等。

7. 配置完成后,点击"保存配置"按钮,保存配置文件。

第三步:生成可执行文件1. 在launch4j的主界面中,点击"Build wrapper"按钮,开始生成可执行文件。

exe4j 生成原理

exe4j 生成原理

exe4j 生成原理(最新版)目录1.exe4j 简介2.exe4j 生成原理3.应用案例4.总结正文1.exe4j 简介exe4j 是一个开源的 Java 工具,它可以将 Java 字节码转换为可执行的 Windows 可执行文件。

通过使用 exe4j,Java 开发人员可以在不修改源代码的情况下,将 Java 程序打包成 Windows 应用程序。

exe4j 生成的 exe 文件可以直接在 Windows 操作系统上运行,无需 Java 运行环境。

2.exe4j 生成原理exe4j 的工作原理是将 Java 字节码转换为 Windows PE(Portable Executable)格式的可执行文件。

它主要通过以下几个步骤完成:(1)将 Java 字节码文件读取到内存中。

(2)将 Java 字节码文件中的类定义转换为 Windows 结构。

(3)将 Java 字节码编译为 Windows PE 格式的可执行文件。

(4)将生成的 Windows PE 文件保存到磁盘上。

3.应用案例下面是一个简单的 exe4j 应用案例:假设我们有一个 Java 程序,它的主类定义如下:```javapublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}}```我们可以使用 exe4j 将这个 Java 程序打包成 Windows 可执行文件。

首先,我们需要在项目中添加 exe4j 的依赖,然后执行以下命令:```exe4j -J-Djava.ext.dirs=lib -J-classpath.HelloWorld.class -o HelloWorld.exe```这个命令将生成一个名为 HelloWorld.exe 的可执行文件。

我们可以在 Windows 操作系统上直接运行这个文件,看到输出“Hello, World!”。

如何将JAVA程序打包成exe文件

如何将JAVA程序打包成exe文件
怎么将jar转成exe程序(要求转成的exe程序不需要jdk)
用专门将jar文件转换成.exe文件的软件,名称为:jsmooth-setup-0.9.7.exe方法如下:1,使用eclipse生成可执行的jar文件2,使用JSmooth生成exe文件(JSmooth的下载地址: /project/downloading.php)2.1 新建一个Jsmooth工程 2.1 在sketlon中选择“Console“ 或者 “Windowed“ 或者"web"2.2 在Executable中的配置: i. Executable Binary:填写目的输出源的名称。如test.exe. ii. Executable Icon :选择一个好看点的图标 iii. Current Driectory :.(表示当前工程目录,也就是你的test.exe的存储目录,当然也可行换成别的.) 2.3 在Applicationar包以及运行该jar文件所需要的类库(必须先做这步,这样才能选择下一步的main-class) ii. Main-Class:选中我们所需要运行的主类。 iii. 可选项Use an embedded jar:运行该exe时可能需要到的类库(这里只能有一个类库)。 2.4 在JVM Selection中的配置:(一般情况下,这步可以省略的) i. Minimum JVM Version:写一个需要运行该程序所需的最低的就JVM的版本,比如1.4 2.5 Compile:OK,编译成功后,在你的输出目录上就会有一个崭新的exe程序了。注意:即使后面的选项的没用,也得点击一下,否则不等.有的工具不是免费的,比较麻烦.我现在用的打包工具是NativeJ,比较容易使用.
幻影 6级 2009-03-06
EXE4J的效果比较差,

java打包成可执行的jar或者exe的详细步骤

java打包成可执行的jar或者exe的详细步骤

java打包成可执⾏的jar或者exe的详细步骤下⾯介绍过程:在Eclipse下,程序能够正常运⾏.⽅法1:直接拷贝其它能运⾏的JAR⽂件中的MANIFEST.MF进⾏修改⽅法2:利⽤IDE⼯具,如Eclipse在⽣成JAR⽂件时⾃动⽣成MANIFEST.MF内容如下:复制代码代码如下:Manifest-Version: 1.0Main-Class: manager.ui.MainFrameClass-Path: ./lib/spring.jar ./lib/hibernate.jar ./lib/derby.jarSplashScreen-Imager: manager/resources/images/splash.jpg说明:Manifest-Version -指定清单⽂件的版本号Main-Class -指定程序运⾏的⼊⼝类。

注意:类名后不要加class扩展名Class-Path -指定⽀持库的路径。

“.”指程序运⾏⽬录,即导出的JAR包所在⽬录。

程序运⾏时依据Class-Path项的设置路径来查找⽀持库。

每⼀个⽀持库之间⽤空格隔开。

在这⾥使⽤了hibernate,spring,derby.注意:1.如果Java应⽤程序⽤到了⼀些Eclipse包,那么就必须将这些包也复制到程序运⾏⽬录,设置到Class-Path,否则程序将⽆法运⾏.引⽤了⼀些外部组件也需要如此设置,如hibernate,spring,derby.2. 除了⼊⼝类的包名和类名之外,其他设置项都不分⼤⼩写,⽐如:Class-Path写成class-path或CLASS-PATH也可以,swt.jar写成SWT.JAR也⾏。

3.类名后不要加class扩展名4.每⼀⾏的':'后都有⼀个空格,如Class-Path:<空格>./lib/spring.jar5.Class-Path中.引⼊的JAR⽂件每⾏不得超过19个,否则会报错.但在让⼈意外的是每⾏只有前9个有效,故将所有同类型的JAR ⽂件做成⼀个JAR⽂件.如我这⾥的spring.jar,hibernate.jar,derby.jar都是同类JAR⽂件的组合.在spring的 'sessionFactory' bean的配置中则要这样写(与程序中ClassPathXmlApplicationContext对应)复制代码代码如下:manager/entity/MyFile.hbm.xmlmanager/entity/FileType.hbm.xml...1.右键单击项⽬名,在弹出菜单中选择“Export”。

Java打包成windows下可运行的程序

Java打包成windows下可运行的程序

Java Project 打包以及安装包制作Java的桌面程序写好以后只能在eclipse下运行是不可以的,还需要将程序拷贝到其他电脑上运行才可以,所以需要制作成其他电脑可以运行的文件,当然在安装有jdk的电脑上只需要将程序导出为jar文件就可以运行了,但是除了开发java程序人员的电脑上会安装jdk,其他人的电脑上不会有这个环境,所以还需要将java可运行的环境一同打包到程序中去,这样,在用户不安装jdk的情况下也可以运行。

制作可执行文件的过程一、首先程序写好后导出jar文件1.在eclipse中右键工程文件,选择Export2.选择导出为runnable jar file,然后next3.选择应用程序的主入口窗口,保存jar的路径,导出文件的方式,选择第一个第二个都可以,他们都包含程序所需要的库文件,第一个导出的好处是防止程序被反编译,第二个可以保留原有的文件结构,然后finish4.找到导出后的jar文件,如图二、使用java命令运行这个文件1.打开命令提示符窗口,找到jar的目录2.使用java –jar命令运行这个jar文件3.回车看到程序运行起来4.但是程序没有图片,仔细看jar包的大小可以猜测没有资源文件,用WinRAR查看jar内部结构发现没有这些资源三、程序所需的资源文件拷贝到jar的相同目录1.找到project中的除src以外需要的文件资源2.将这些文件资源复制到与jar包相同的目录3.再次运行这个jar文件,发现已经包含了图片等文件4.我们肯定不能让用户这样去运行我们的程序,所以必须要转成可以双击运行的方式。

四、将jar文件转换为可以直接双击运行的exe文件1.将jar文件转为exe文件有一个很好的软件叫做jar2exe,官方下载地址:/zh/jar2exe/free.htm我们下载绿色版本2.下载好以后直接解压即可,运行里面的j2ewiz.exe文件3.看到启动窗口,无需注册直接下一步4.找到jar的路径,选择最低运行jar文件的版本,点下一步5.选择windows窗口程序,下一步6.选择应用程序的进入窗口,设置开启时候的动画(可以不设置动画),下一步7.忽略所有选择,直接下一步8.不需要添加依赖的jar包,下一步9.设置输出的路径文件名,也可以设置exe文件的图标,点下一步10.如果你电脑上配置好了环境变量,而且不需要把程序拷贝到别的电脑上去运行,那么你可以直接点击完成。

如何将一个java程序或项目打包成jar与exe文件

如何将一个java程序或项目打包成jar与exe文件

一、先将一个java 程序或项目打包成jar 文件。

1.先在Myeclipses 下添加一个插件 fat jar (1)先把压缩文件解压,将net.sf.fjep.fatjar_0.0.31.jar 放置在你的Myeclipse 的安装目录下。

此为我的Myeclipse 安装目录路径。

如图所示(2)关闭你的Myeclipse ,重新启动。

(3)右键点击你的项目工程名,查看是否有一个 +buile fat jar 选项。

若有,表明完成上面两部,点击next点击finish,将在你指定位置,生成一个可执行jar文件。

查看是否正常。

可能出现的问题:1.所引入的数据库jar包,导入不正确,无法连接数据库。

2.项目中可能添加的图片,在Jar文件中不能正常显示。

解决第二个问题。

如图所示我的项目内容1.在src目录下新建一个Folder 目录文件,将你之前的图片放置进去。

2.修改代码部分:将之前的代码修改为如上所示写法。

整体修改完毕后,重新对项目进行打包操作。

并做测试检查二、将一个可运行的jar文件做成exe文件。

1.先安装exe4j软件。

2.运行软件。

注册窗体进行软件注册用户名,公司名称,随便填写。

注册完毕,回到主窗体。

Next直接点Next第二步我们选择“JAR in EXE mode” 就是选择我们已经有制作好的jar文件。

我的是“桌面\project\”. NEXT由于我的演示程序是图形的,所以选第一个,如果你的程序是控制台的,则选择第二个,Executable name写你将要生成的.exe文件的名字,Icon File可以选择生成文件的图标。

第5步,先别管上面的,先在下面单击绿色的“+”号。

在弹出的窗口中点Archive,然后找到起初已经做好的PetDemo_fat.jar文件,"OK"后返回。

在下面的Class Path里就出现jar文件路径后,再在上面Main Class栏内点击找到main所在的类。

如何使用Exe4j将jar打包成exe文件(将jdk打包在内)

如何使用Exe4j将jar打包成exe文件(将jdk打包在内)

下面开始详述步骤:1.welcome-打开Exe4j如图,如果你有保存过的项目打包配置文件,那么点>>open打开即可。

如果没有点>>next.2.Project type-选择打包方式由于我们讲的是打包jar生成exe,所以选“jar in exe”mode,这种方式可以把一个java应用程序打包成一个exe文件,但是不能将除jar以外的附加文件打包进去。

然后>>next3. Application info-配置生成的应用程序的信息设置你的应用程序的名称和将要生成的可执行文件的输出文件夹。

然后>>next.4.Executable info -配置可执行文件的参数type项根据你的程序的类型确定,本例为GUI程序;接下来是文件名、可执行文件的图标、是否只允许同时刻只能运行一个应用程序、当主线程有误时是否抛出异常、更改工作目录(相对于可执行文件)。

然后点>>advanced options>>version info5.version info-设置版本信息6.java invocation-配置运行环境先配置class path,将此项内原有的配置全部删除,然后点“+”找到你生成的jar文件,然后在上边的general中点浏览按钮,Exe4j会自动找到你应用程序的入口-main class。

在下边的advanced options中选native libraries设置,此功能是添加你程序用到的外部jar包文件,这个我一直没用过,因为我做什么事都喜欢集中,所以在程序中用到的所有外部包全整合到jdk/jre里了,这样在给客户安装程序时只要把程序直接给他考过去就可以用了,不用再安装其它东西,他们会很喜欢的哦,毕竟用户不是搞程序设计的嘛。

7.jre-配置jre在这里配置你的jre版本类型,然后再看>>advanced option>>search sequence在这里来配置你运行程序所需的jre/jdk的位置,如果你只是打包后本机运行,直接指定到你本机的jre/jdk目录即可,如果你打包后的程序要在别的客户机上运行,而该机又没装jdk,这时我们就要想另一种方法了。

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

将JA V A打成EXE文件,同时将JRE打包,可以没有JRE的电脑上运行
人人IT网整理,更多文章欢迎访问:www.renren.it
对于作Java桌面应用来说,比较烦人的就是安装部署问题,客户端是否安装有jre、jre 版本问题、jre去哪下载、如何用jre启动你的Java应用?不要说刚接触电脑的人,就算是比较熟悉电脑,如果没有接触过Java,面对一个Java应用,如何在Windows下启动它,估计都会折腾半天。

如果不是因为这个问题,Java在我的眼里算是最完美的语言了,也是我最喜爱的语言。

所以我认为这个是导致Java桌面应用被一些人所讨厌的最大原因,Java的优势是“一次编写,随处运行”,跨平台特性确实很好,但并不是每个人都需要或都想要跨平台,而且有时候JVM平台或版本问题也会造成“一次编写,到处测试”的尴尬。

最好的方式莫过于带着JRE,让用户轻松点击就能运行。

下面我们来解决这样的问题,有什么好的建议或方法请其他朋友多多指教或补充!
针对windows平台,让用户一键式安装,双击使用, 使用工具exe4j + Inno Setup, 这两个工具都可以在网上找到,不熟悉的可以多搜搜,使用起来也不难。

带着JRE运行,JRE的大小应该是最让人头疼的,我默认安装的jre6大小达到80M,而程序只有200-300k左右,感觉非常不合理,分发与网络传输过程也会大受影响!为了解决这个问题我一直在网络上搜索“瘦身版”的JRE,无意中搜到了Beansoft老师介绍的一篇关于迷你JRE的文章,相关的JRE下载后解压约14M左右,试用了一下,相对于我的应用缺少了一些类文件,关于部分xml操作类,及swing桌面应用框架相关连的部分类也找不到,最后借鉴了一下,自己把一个完整的JRE从80M瘦到了38M,去除了很多不需要的类文件,当然,如果耐心一点还可以再瘦下去,再抽掉一些类文件。

在这个基础上再配合Inno Setup这个安装包制作工具,最后把整个程序从40M压到了8M,下面看看关于整个操作过程,关于JRE的瘦身有些烦琐就不写了,而且SUN的JRE瘦身计划也在进行,相信很快会有更小的瘦身版JRE推出,自己没有必要再去费神。

下面是我的一个完整的Java程序—— MyLoading
可以看到已经附带了jre1.6 , 下面先使用exe4j给它制作一个exe执行文件(即上图的MyLoading.exe),并指定我们自带的jre1.6 。

以下是exe4j的启动界面,点击下一步开始创建配置文件。

接着选择类型,我们选择第一个,这样可以保证程序仍具有跨平台的特性。

如果选择第二个,可以把程序完全编译成exe文件,可以更好的保护你的程序不被反编译。

接下来设置你的程序的短文件名,源文件夹路径(如我的:E:\MyLoading),以及要生成的exe 文件的存放目录,exe存放目录必须指定到源文件夹下,这里我把它指定为E:\Myloading的根目录下。

接下来,可以给我们即将生成的exe文件起一个名字,如我的“MyLoading”,还可以给它指定一个ico类型的图标,其它按默认就可以了,如图:
接下来的这一步,我们需要把程序中所用到的类路径添加上去。

然后指定程序的启动类,其它如果没有必要的话,则按默认即可,点击+号添加类路径:
基本上你所需要用到的Jar文件都要添加上去,可以逐个添加上去,也可以添加整个文件夹或者使用系统环境变量,为了使你的程序能够随处运行,所以还是强列建议你使用相对路径,并且不要使用环境变量。

添加好你的类路径之后回到上一步去选择好你的"Main Class"即可。

接下来先选择我们的程序所需要的jre版本,然后便是选择我们自带的jre了,这一步不是必须,但是为了更好的分发程序,我们自带了jre, 所以必须把我们自带的jre指定为首选的运行环境,如图选择:
Search sequence
默认情况下程序会去系统的注册表,环境变量及相关的目录查找jre,因为我们只需要自带的jre,所以这里我把默认的选项移除了,然后添加我们自己的jre所在的目录路径,点+号开始:
这里还是建议使用相对的目录路径:
指定jre所在的目录,如图:
最后我的jre目录路径就是这样的:.\jre1.6
下面这一步只是简单的给程序添加一个启动画面,然后按默认下一步下一步就可以了。

程序最终生成了这个执行文件: MyLoading.exe
现在使用它,已经可以正常利用我们自带的jre启动程序了,但是整个程序仍有40M的大小. 现在我们使用Inno Setup进行压缩并制作一个安装包。

Inno Setup的下载安装请到网上搜索,安装后启动脚本向导,如图所示:
整个过程很简单:
这里指定你的程序的启动文件,即刚才用exe4j创建的exe文件,并将你的整个程序目录都包含进去就可以了,接下来的基本上一直按下一步就可以了,直到脚本向导完成,
然后执行该脚本即可:
然后找到Inno Setup的默认输出目录,就可以看到编译输出后的安装包了,如下图:MyLoading安装.exe
大小已经压到了8.86M。

利用这个就可以快速轻松的安装你的Java桌面应用了。

相关文档
最新文档