「javajre打包」打包Java
本篇文章给大家谈谈javajre打包,以及打包Java对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
怎样将java程序打包成安装文件
一,下载inno setup
二,下载jre..去java官方下载
.这个是我将要打包的目录(netbeans编译后的dist文件夹)
然后把jre和相关的东东放进去,然后在里面加入一个go.cmd(bat)(名字随意啦)
Java代码
@echo off
echo 请稍后..安装Java运行环境ing
'如果没有java命令 则安装jre
java||jre-6u20-windows-i586.exe /q /norestart
start /MIN javaw -jar AutoCheckOut.jar
代码就像这样
解释下这里..
java||jre-6u20-windows-i586.exe /q /norestart
意思是..如果java这个命令执行不成功..则执行后面那句jre-6u20-windows-i586.exe /q /norestart
这句话是在安静模式下安装jre,没有对话框
这部完成后
start /MIN javaw -jar AutoCheckOut.jar
可以让我们的java程序在一个没有控制台的方式运行
然后你的目录大概就是这样的
好了.改下一步了
四,用inno创建setup.exe
打开inno
用向导创建
之后一步一步到这里
注意添加文件和文件夹 你添加的部分都是作为应用程序的根目录
这里改成我们刚才写的cmd(bat)文件
然后继续向前.按照你的喜好来改设置
最后到这里的时候
我们还要改小小的地方..不然的话..
1.[Files]里面
Source: "E:\JAVA\AutoCheckOut\dist\lib\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
这一行 可以看到吧lib目录加到根目录区了..所以要改一下
Source: "E:\JAVA\AutoCheckOut\dist\lib\*"; DestDir: "{app}\lib\"; Flags: ignoreversion recursesubdirs createallsubdirs
2.[Icons]里面
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
需要多加一行
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}";WorkingDir: "{app}"
加这行是为了让cmd运行时有正常的工作目录
怎样java 打包成exe文件
右击你的项目,选择Export:
选择Java目录下的JAR file:
设置导出jar文件的路径,我这里选择的是桌面,点击Next:
这一步默认,不用改动,直接Next:
设置项目的主类,也就是项目的入口,点击Finish:
这就是生成的jar文件:
下面需要一个名叫exe4j的软件,可以自行去网上下载,下载好该软件后打开进入主页面,直接点击Next:
这一步选择第二项"JAR in EXE" mode:
填写应用的简称,和转换后exe文件的路径,我这里让然是选择的桌面:
这一步填写生成exe文件的名称:
点击"+"号添加刚才生成的jar文件:
添加jar文件后设置程序的入口:
填写最低版本,最高版本可以为空:
到这一步就可以直接点击Finish了:
这就是生成的exe文件:
如何将java和JRE打包生成绿色版程序
首要有必要了解一下java.exe 如何寻找JRE库的:
当在控制台执行java.exe,操作系统寻找JRE的方式如下:
1) 先找当前目录下有没有JRE
2)再找父目录下有没有JRE
3)接着在PATH路径中找JRE
4)注册表HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\ 查看CurrentVersion的键值指向哪个JRE
2.JRE类库查找
JRE自带的基础类库主要是JRE\lib\rt.jar这个文件,包括了Java2平台标准版的所有类库。和JRE的版本一致。
JRE中由ClassLoader负责查找和加载程序引用到的类库,基础类库ClassLoader会到rt.jar中自动加载,其它的类库,ClassLoader在环境变量CLASSPATH指定的路径中搜索,按照先来先到的原则,放在CLASSPATH前面的类库先被搜到,Java程序启动之前建议先把PATH和CLASSPATH环境变量设好,OS通过PATH来找JRE,确定基础类库rt.jar的位置,JRE的ClassLoader通过CLASSPATH找其它类库。但有时候会出现这样的情况,希望替换基础类库中的类库,那么也可以简单的通过-Djava.endrosed.path=...参数传递给java.exe,于是ClassLoader会先于基础类库使用java.endrosed.path参数指定路径的类库。因此Java的版本管理是非常简单有效的,也许很原始,不过很好用,简单就不容易出错。
3.Java的虚拟机启动和加载类库
在Console执行java.exe xxx命令以后,如前所述的寻找JRE,OS找到JRE目录,根据java.exe的传递参数,选择加载Server版的jvm.dll还是Client版的jvm.dll,然后加载jvm.dll,把控制权交给jvm.dll。
接下来,jvm.dll进行初始化,分配内存等等动作,然后在CLASSPATH路径中寻找class,找到class以后,寻找class中的程序入口点Main函数,然后从Main函数执行程序,在执行过程中,使用ClassLoader动态加载一系列引用到的类。当调用到native方法时,jvm.dll告诉OS在JRE\bin目录下寻找某某DLL文件,调入内存,于是实现了JNI调用。
以下以三个例子,说明如何打包JRE和第三方类库,根据需求综合来使用就可以了:
一、
1.首先将程序打包(这一步可以通过eclipse的导出完成)。
2.为项目添加第三方jar包。在第1步打好的jar包的同级目录下,新建一个lib(名字可以自取)文件夹。用winrar等解压文件打开第1步做好的jar包,到META-INF目录下,打开MANIFEST.MF文件,修改它:在Main-Class上面一行加上:Class-Path:lib/1.jar lib/2.jar其中lib是刚才我们建的文件夹名,1.jar和2.jar是我们需要的第三方包,每两个第三方包之间由空格分开。
3.在第1步打好的jar包的同级目录下,新建一个jre文件夹,把jre运行环境考贝到这里面来。
4.在第1步打好的jar包的同级目录下,新建一个文本文档,加上下面的语句:start jre/bin/javaw -jar HydraKyouFeng_v0.2s_swt.jar
这表示通过同级目录里面jre文件夹下的javaw -jar来运行我们的jar包(也就是第1步打好的jar包,我这里的名字是HydraKyouFeng_v0.2s_swt)。
5.到了这一步,我们双击jar包已经能在原本没有jre环境平台里面直接运行了。
二、
运行实现希望目的目录结构(以test目录为例):
test 存项目java文件生成的.class,.jar 等文件.
test/jre/bin 复制对就jdk中的 bin目录就可以。
test/jre/lib 复制对就jdk中的 jre/lib 目录就可以。
建立以上目录结果之后就可以将test/jre/bin/java.exe 发送到桌面快捷方式。
然后修改一下那快捷快方式 目标(T)标位 改成 ...../test/jre/bin/java.exe test ,
这里要注意的是 起始位置(S) 一起在改一下!如下:...../test/ 。
随后使用javaw.exe启动。
三、
1、先创建一个manifest.mf的文件,内容为
Main-Class: ExcelCount(class类路径,我的为与manifest.mf相同路径)换行
2、将程序中要导入的jar包解压,放到相同目录中,我的为org文件夹
3、运行cmd,输入如下
jar cvfm ExcelCount.jar manifest.mf ExcelCount.class ExcelCount$1.class OpenListener.class org
其中ExcelCount.jar为将要生成的jar文件,三个.class文件是要打包的文件,org即为引入jar包所在文件即可生成可执行jar包
4、运行jar文件
jar文件可以在安装jdk的机器上直接运行,启动cmd命令,输入java -jar jar文件路径,也可以运行与没有安装jdk的机器上,不过要将jdk安装后目录下的jre文件,我的为D:\java\jdk1.6.0_3\jre,全部复制到jar文件所在目录下,再新建一个名为run.bat的文件,run.bat文件的内容为
start jre\bin\javaw -jar jar文件名
我的此文件内容为
start jre\bin\javaw -jar ExcelCount.jar
以后再没有安装jdk的机器上只要运行run.bat文件就可以了
如何将java源程序打包成可执行文件
把 java项目 打包成 exe 可执行文件! 打包跨平台的.exe文件。安装后运行左窗窗口标有十步。
第1步 : 完全略过,直接点Next
第2步 : 选择“JAR in EXE mode” 就是选择已经有制作好的jar文件。
第3步 : 上面是项目名称,可随便填写,下面一个写出想要将打包后的exe文件输出的目录的是“桌面\project\”。
第4步 : 由于演示程序是图形的,所以选第一个,如果程序是控制台的,则选择第二个,Executable name写将要生成的.exe文件的名字,Icon File可以选择生成文件的图标。
第5步 : 先别管上面的,先在下面单击绿色的“+”号,在弹出的窗口中点Archive,然后找到起初已经做好的 CAMP_fat.jar(详见1.3)文件,"OK"后返回,在下面的Class Path里就出现jar文件路径后,再在上面Main Class栏内点击找到main所在的类。
第6步 : 系统的JRE版本,一般是填个1.3,下面填1.6在这里单击advanced options,选择search sequence。选这个就是因为要把JDK环境也打包进来,好让程序能跨平台使用。首先要从系统的JDK下的JRE目录copy到.exe文件的输出目录下“桌面\project\JRE”,然后回到exe4j中在弹出窗口删除列表中的所有项。是三项,一个注册表的,一个JAVA环境变量的,一个JDK环境变量的,都不要。然后单击绿“+”,选择directory并选择JRE的根目录,是“桌面\project\JRE”就是 copy后的目录,选完后exe4j弹出窗口中的Directory里会显示“.\JRE”。点OK关闭该窗口,返回exe4j的主窗口,就可以看到刚加的路径。再从主窗口左侧窗口中单击advanced options,并选择preferred VM,在弹出的窗口中选择client hostspot VM,单击next按钮继续。
第7、8步 : 是一些个性设置默认即可。
第9步 : 编译
第10步 : 点那个“Click Here to Start the Application”按钮就可以看到程序运行效果了,然后再点”Seave as”保存一个exe4j生成的一个文件,随便存哪里都行,和.exe程序无关。
关于javajre打包和打包Java的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-21,除非注明,否则均为
原创文章,转载请注明出处。