很简单,建一个文件夹,例如名称为a 则文件目录可以按照下面这样安排 a ----jar ----***.jar ----***.jar ----jre ----start.bat把你的程序所有jar(自己写的以及第三方包全部放入jar文件夹下,把jdk下的jre文件直接复制到a文件夹下)start.bat中的内容如下: @echo off set JAVA=./jre/bin/java set JAVA_OPTS=%JAVA_OPTS% -Xms200m -Xmx1024m set MAIN_CLASS=test.Test %JAVA% %JAVA_OPTS% -cp jar/a.jar;jar/b.jar %MAIN_CLASS% @echo on pausetest.Test修改成你的启动main方法的类,-cp之后包括你jar目录下的所有jar文件或者用exe4j打包一个exe,原理是一样的,把jre放到exe文件一起就行了。
则文件目录可以按照下面这样安排
a
----jar
----***.jar
----***.jar
----jre
----start.bat把你的程序所有jar(自己写的以及第三方包全部放入jar文件夹下,把jdk下的jre文件直接复制到a文件夹下)start.bat中的内容如下:
@echo off
set JAVA=./jre/bin/java
set JAVA_OPTS=%JAVA_OPTS% -Xms200m -Xmx1024m
set MAIN_CLASS=test.Test
%JAVA% %JAVA_OPTS% -cp jar/a.jar;jar/b.jar %MAIN_CLASS%
@echo on
pausetest.Test修改成你的启动main方法的类,-cp之后包括你jar目录下的所有jar文件或者用exe4j打包一个exe,原理是一样的,把jre放到exe文件一起就行了。
http://bbs.bccn.net/viewthread.php?tid=431340
exe是可执行文件,应该可以运行;
仔细看一下6楼的,就差不多了;
%JAVA% %JAVA_OPTS% -cp jar/\* %MAIN_CLASS%
jre(java runtime environment),就是java程序的运行环境。你所写的java程序在经过javac编译后会形成字符行文件,这个java的中间文件,计算机是看不懂的,而这个文件是给jvm(java的虚拟机)用的,由jvm进行解释后形成机器语言给计算机。而这个jvm就在jre中,也就是说java程序的运行要有jre来担当。
所以jdk和jre的区别就是一个用于开发,一个用于运行,联系就是他们都是java开发者所必备的(除非你就像运行java程序,那么用jre就足够了)。
http://wenku.baidu.com/link?url=MkVrJ8O8Wg0W7Ec6KHxXh2Mhjr_kiXHZBsq8Zg-Czr_vYS_WCQQEKjUA_-FwJ-cLmZit5l5eFp_5ZaCkW-6EMffeINazGasnp556WloAydO 此为exe4j教程
JAVA程序运行离不开JRE,就算是做成EXE,它也是通过内带的JRE运行的从编译的角度上看,由于 java 没有 delete 操作,程序无法主动回收堆中的内存,所以必须有一个机制实现自动内存回收,否则程序运行时间稍微一长,内存会被它吃光。如果操作系统没有自动内存回收机制,那么程序必须运行在支持这种机制的虚拟机上。