日期:2014-05-19  浏览次数:20678 次

简单j2ee打包到exe
目标:客户机安装exe文件后,直接运行浏览器,访问应用系统,bs当cs用,鼓捣两天,记录结果

准备:
java 正常安装 (测试使用的1.6)
tomcat 解压版 (测试使用的6.0.35)
mysql 解压版 (测试使用的5.1)
浏览器 解压版 (测试使用的火狐)fullscreen插件,清除浏览器窗口所有内容
——tomcat下已有应用可以跑通mysql

java:
进入java安装目录下,拷贝jdk文件夹到tomcat下
jdk下只需保留bin、include、jre、lib四个文件夹

tomcat:
修改bin/service.bat文件
——开头位置设置java环境
set "JAVA_HOME=你的tomcat位置\jdk"
set "JRE_HOME=你的tomcat位置\jdk\jre"
——结尾倒数几行 "%EXECUTABLE%" //US//%SERVICE_NAME% ++JvmOptions 语句最后追加 --Startup=auto 用于服务自启动;
——接着echo The service '%SERVICE_NAME%' has been installed.后追加 net start %SERVICE_NAME% 用于启动tomcat服务

修改bin/setclasspath.bat文件
——开头位置设置java环境
set "JAVA_HOME=你的tomcat位置\jdk"
set "JRE_HOME=你的tomcat位置\jdk\jre"

mysql:
保留bin、data、share文件夹和my.ini文件
bin下保留libmySQL.dll、mysql.exe、mysqladmin.exe、mysqld.exe即可
修改my.ini
basedir="你的mysql位置"
datadir="你的mysql位置/data/"

火狐浏览器:
安装了一个full screen插件,打开浏览器只有你的应用,没有任何多余内容
给浏览器执行文件Firefox.exe创建一个快捷方式,在属性中修改目标
"你的浏览器位置\Firefox.exe" http://localhost:8080/
这样打开快捷方式就是你的应用了(安装完插件就没地址栏了)

配置文件:
写个bat,注册mysql和tomcat
cd 你的mysql目录\bin
mysqld --install mysql服务名称
sc config mysql服务名称 start= auto
net start mysql服务名称
cd 你的tomcat目录\bin
service.bat install

清理战场,打包工具使用的NSIS(2.45)
编译器中有向导配置,强大
遗留问题:
编译后的exe文件100M,各部分应该还可以精简,有需要可以研究
bat文件应该可以在nsis脚本里编辑吧
我选择的不允许客户修改安装位置,这样配置jdk、tomcat、mysql路径就都写死了
如果客户选择安装位置,tomcat、mysql里应配置的相对路径,浏览器不输入访问地址,快捷方式也应该是相对路径

1 楼 xiaomange 2012-02-29  
回去试试看。
2 楼 yueming 2012-02-29  
很详细,感谢分享