InstallAnywhere web打包成exe文件(tomcat6 , mysql。jdk1.6) 1、要求 我们的web程序使用 tomcat6 作为应用服务器,数据库为 mysql。java的版本是jdk1.6,同时,在系统安装的时候,需要导入一些数据,这些都是我们帮助客户录入的,因为客户觉得录入太麻烦了。 目标是客户只需要运行一下EXE文件,就完成WEB系统的安装。JDK,TOMCAT,MYSQL和环境变量都要一次设置好。(只适用于WINDOW系统)
2、思路 既然客户要求自动安装,那么无非就是自动安装 tomcat, mysql, jdk, 我们的web应用,以及导入客户的数据。但是我们的客户对电脑完全不懂,所以,如果安装过程中,出现 tomcat 那种的“下一步”操作,是绝对不行的。最好是一气呵成,点完安装,一切ok,打开浏览器,就能访问。 图形的当然最好,不过俺还是想省点事,交流之后客户能够接受批处理文件。那么就用批处理编写安装程序。
3、建立项目文件夹 在C盘建立名为MyApp的文件夹,把免安装的Java、tomcat6、mysql放进去。
4、自动安装 jdk 因为 jdk 是 tomcat 的必要环境,所以先考虑这个。其实这个最简单了,拷贝一份安装过的jdk就可以了,一般 c:/programe files/java 目录里有两个目录:jdk1.6.0_12 和 jre1.6.0_12
5、自动安装 tomcat 这个部分非常简单,网上也有详细的资料。无非就是下载一个tomcat的免安装版本。然后修改service.bat文件,在第一行加上 set JAVA_HOME=C:/ MyApp/java/jdk1.6.0_10
6、自动安装 mysql 这部分的资料网上很多,无非是下载免安装版本的mysql。但是通常你花费点时间才发现,免安装版本的mysql里不带 my.ini 文件,没有这个文件是不能启动mysql的。从你的安装过的版本里拷贝一个出来吧,修改一下其中的配置。 basedir="C:/MyApp/MySQL/MySQL Server 5.1/" datadir="C:/ MyApp /MySQL/MySQL Server 5.1/Data/" (把其它地方安装后的mysql复制进来也算是免安装版的MYSQL)
7、安装我们的web应用以及导入数据 安装web应用太简单了,拷贝到tomcat目录下就行了。 导入数据也很简单。我们首先准备一个 init.sql。 这个文件里写上创建数据库的语句。然后放在C:/MyApp/MySQL/db目录下,其它目录也行,但文件夹名称不能有空格,否则会找不到文件。
8、注册MYSQL和TOMCAT的系统服务 写一个批处理文件regeditService.bat
再建一个uninstall.bat文件
9、在MyApp目录下建一个config文件夹,把regeditService.bat放进去
10、使用制作工具打包成EXE
别急着点生成脚本,先设置一个高级选项,点进去
首选运行是选不了regeditService.bat文件的,要自己手动输入。点击返回主菜单。然后点击生成脚本即可。
这个工具在CSDN的下载资源里面输入exe打包制作工具(绿色版)就能找到.
以打包我自己的rpss项目为例:
先将Java、Tomcat、MySQL和项目文件都复制到一个目录里面。该目录下有以下东西:
[apps] - 存放项目文件
[jdk1.6.0_13] - Java的jdk文件
[MySQL-5.1] - MySql非安装版
[Tomcat-6.0.18] - Tomcat
1) 修改 Tomcat目录/conf/server.xml 中的标签 ,将appBase指向项目所在相对路径。注意路径分割符使用“/”。
2) 编写两个批处理文件,分别为“install.bat”和“uninstall.bat”,放在目录根路径下。
install.bat内容:
set JAVA_HOME=%1%/jdk1.6.0_13 set CATALINA_HOME=%1%/Tomcat-6.0.18 call %1%/Tomcat-6.0.18/bin/service install Tomcat call %1%/MySQL-5.1/bin/mysqld --install MySQL net start MyTomcat net start MySQL
uninstall.bat内容:
set JAVA_HOME=%1%/jdk1.6.0_13 set CATALINA_HOME=%1%/Tomcat-6.0.18 net stop Tomcat net stop MySQL call %1%/Tomcat-6.0.18/bin/service remove Tomcat call %1%/MySQL-5.1/bin/mysqld --remove MySQL
3) 建立Project 打开InstallAnywhere 2009 Enterprise,建立Baisc Project Template,然后选择Advanced Designer,设置Title, Name等。
4) 本地化语言 菜单Project>Locales>,选择需要的本地化语言。
5) 设置环境变量 菜单Install>,按钮Add Action...>Set System Environment Variable>Add>,设置JAVA_HOME和CATALINA_HOME两个系统环境变量。 其中$USER_INSTALL_DIR$表示用户选择的安装路径。
6) 注册服务 菜单Post-Install>,按钮Add Action...>Execute Command>Add>,在安装完成后执行install.bat,注册Tomcat和MySQL服务。 其中Command Line: cmd /c $USER_INSTALL_DIR$/install.bat $USER_INSTALL_DIR$。 cmd /c表示执行指定的命令并中断。 $USER_INSTALL_DIR$是传递给install.bat中%1%的参数。 并且,选中Options中的3个选项。 将该Execute Command移动到Panel: Install Complete前面。
7) 让安装完成后启动浏览器,自动打开项目 菜单Post-Install>,按钮Add Action...>Launch Default Browser>Add> 在Other URL: 填入项目地址 http://localhost:7777/rpss 讲该Launch Default Browser移动到Panel: Install Complete后面。
8) 反安装 菜单Pre-Uninstall>,按钮Add Action>Execute Command>Add>。 Command Line: cmd /c $USER_INSTALL_DIR$/uninstall.bat $USER_INSTALL_DIR$ 将该Execute Command移动到第一个。 选中Options中的3个选项。
9) 打包 菜单Build>,按钮Build Project>,等待InstallAnywhere打包完成。 完成以后,按钮Open in Explorer>,文件夹Web_Installers>InstData>Windows>VM>,setup.exe就是完成的安装文件包。
打包J2EE工程为安装文件(InstallAnywhere7.1)
现在有这样一个J2EE项目,使用tomcat + mysql 开发,开发完成后,客户要求打包成安装程序,要求客户机器在没有任何开发环境下也能运行该项目
打包步骤如下: 有这几个问题需要解决:注册MySQL服务,打开MySQL和tomcat服务,解决方法如下:
1. 准备工具: tomcat5.0.28解压缩版(http://archive.apache.org/dist/tomcat/tomcat-5/v5.0.28/bin/jakarta-tomcat-5.0.28-embed.zip) mysql5.0.22免安装版(http://downloads.mysql.com/archives/mysql-5.0/mysql-noinstall-5.0.22-win32.zip) installAnywhere7.1(ftp://download.nbjsz.com/programdev/installanywhere.rar)注册码去google下 jdk(使用安装好的就行)
2. 将J2EE工程打包为.war,放到tomcat的webapps中
3. 建立一个文件夹,取名为"服务",在该文件夹下建立2个批处理文件,分别取名为:"启动服务.bat" 和"停止服务.bat"
4. 打开installAnywhere,开始本次打包的关键步骤 0 选择"Create New Project","Basic Project Template",点击"Save as"选择最后的保存路径,以及项目名称。next,next
A 添加文件,将tomcat-5.0.28,mysql-5.0.22,jdk1.5.0_15,服务 这四个文件夹添加进去,next,Advanced Designer
B 在install中,addAction 选择"Create Alias,Link,Shortcut",在Path选项中选择"Shortcut's Destionation Folder" 表示安装到"开始"菜单中去,点击Choose Target 选择"服务"下"启动服务.bat"
C 同B,对"服务"下"停止服务.bat"做相同操作。
D 在install中,addAction 选择"Modify Text File - Single File" 点击Choose Target 选择"服务"文件夹下"启动服务.bat"文件,选择Prepend,写入 net start mysql net start tomcat
E 在install中,addAction 选择"Modify Text File - Single File" 点击Choose Target 选择"服务"文件夹下"停止服务.bat"文件,选择Prepend,写入 net stop tomcat net stop mysql
F 在Post-install中,addAction 选择"Modify Text File - Single File" 点击Choose Target 选择tomcat-5.0.28/bin下service.bat,选择Prepend,写入 set JAVA_HOME=$USER_INSTALL_DIR$/jdk1.5.0_15 set CATALINA_HOME=$USER_INSTALL_DIR$/tomcat-5.0.28
G 在Post-install中,addAction 选择"Modify Text File - Single File" 点击Choose Target 选择mysql下my.ini(如果没有可以google一个),选择Prepend,写入 [mysqld] #设置basedir指向mysql的安装路径 basedir=$USER_INSTALL_DIR$/mysql-5.0.22 datadir=$USER_INSTALL_DIR$/mysql-5.0.22/data default-character-set = UTF8 [WinMySQLAdmin] Server=$USER_INSTALL_DIR$/mysql-5.0.22/bin/mysqld-nt.exe user=root password=root 注意:首先要删除my.ini文件中的相应属性的设置
H 在Post-install中,addAction 选择"Execute Script/Batch file" 在Comment中取名为"注册MySQL服务",在Script中写入 Call "$USER_INSTALL_DIR$/mysql-5.0.22/bin/mysqld-nt" -remove Call "$USER_INSTALL_DIR$/mysql-5.0.22/bin/mysqld-nt" -install
I 在Post-install中,addAction 选择"Execute Script/Batch file" 在Comment中取名为"注册TOMCAT服务",在Script中写入 Call "$USER_INSTALL_DIR$/tomcat-5.0.28/bin/service.bat" remove tomcat Call "$USER_INSTALL_DIR$/tomcat-5.0.28/bin/service.bat" install tomcat
J 在Post-Uninstall中,addAction 选择"Execute Script/Batch file" 在Comment中取名为"注销MySQL服务",在Script中写入 Call net stop mysql Call "$USER_INSTALL_DIR$/mysql-5.0.22/bin/mysqld-nt" -remove
K 在Post-Uninstall中,addAction 选择"Execute Script/Batch file" 在Comment中取名为"注销TOMCAT服务",在Script中写入 Call net stop tomcat Call "$USER_INSTALL_DIR$/tomcat-5.0.28/bin/service.bat" remove tomcat
注意:创建"Modify Text File - Single File"的时候把下面的"Create backup"取消。 安装的时候,整个安装路径上不能有空格的出现。不然就找不到JAVA_HOME,和CATALINA_HOME。 5. 开始打包,完成! 来自: http://hi.baidu.com/annleecn/blog/item/50b3a4501c0240828d543051.html |