通过jar命令或集成开发环境的打包工具,利用manifest.mf文件将.class文件打成可执行jar包时,如果程序引用大量第三方的jar包,那么会使得manifest.mf文件的编写变得很繁琐,并且可执行的jar需要运行机器上装有jre,考虑通过编写bat文件运行jar包程序。

过程如下:

1 对自己编写的java文件,对其编译,将class文件打成jar包(包名eg DMManager.jar)

2 新建文件夹,作为应用程序的home文件夹(文件夹名eg DMManager)

3 在DMManager文件夹下建立子文件夹lib、bin、jdk

4 将DMManager.jar放入lib下

5 在lib下新建子文件夹other

6 将程序所需的第三方jar包放至other下

7 处理jdk文件夹,jdk文件夹是个可选项,如果要使得程序的执行不依赖与目标机是否装有jre运行环境,那么需将本地JAVA_HOME文件夹下的内容拷贝至该文件夹下

8 编写bat文件(*.bat)

a 利用目标机的jre(第7步可省)

@echo off

cd ..
set APP_HOME=%cd%

cd bin

start "" "%JAVA_HOME%/bin/javaw.exe" -classpath "%APP_HOME%/lib/DMManager.jar" -Djava.ext.dirs="%JAVA_HOME%/jre/lib/ext";"%APP_HOME%/lib/other" -Xms256m -Xmx512m my.package.name.Main

b 利用自身的jre(第7步不能省)

@echo off

cd ..
set APP_HOME=%cd%

set JAVA_HOME=%APP_HOME%/jdk

cd bin

start "" "%JAVA_HOME%/bin/javaw.exe" -classpath "%APP_HOME%/lib/DMManager.jar" -Djava.ext.dirs="%JAVA_HOME%/jre/lib/ext";"%APP_HOME%/lib/other" -Xms256m -Xmx512m my.package.name.Main

9 将*.bat文件放至bin下

10 双击*.bat试试运行效果如何。。。 over

转自:http://blog.csdn.net/wk_ri/article/details/5302258