使用InstallAnywhere工具打包Java_Web程序
一、准备工作
1、 下载InstallAnywhere,并安装;
2、 下载解压版jdk1.7(示例为jdk1.7.0_75);
3、 下载解压版tomcat7.0以上版本(示例为apache-tomcat-7.0.72);
4、 下载解压版MySQL5.0以上的版本(示例为mysql-5.6.26);
5、 将web项目放在tomcat的webapps中,将该项目的数据库也同步到解压版的MySQL中,然后将jdk、tomcat、MySQL都放在某个盘的同一个文件夹中;
二、编写两个批处理文件,分别为“注册服务.bat”、“启动.bat”、“卸载前必点.bat”
注册服务.bat里的内容
echo "注册mysql服务"
cd mysql5.0\bin
mysqld -install mysql-iams
启动.bat里的内容
cd mysql5.0\bin
echo "启动mysql服务"
net start mysql-iams
cd..
cd..
cd apache-tomcat-7.0.72\bin
call startup.bat
卸载前必点.bat里的内容:
cd mysql5.0\bin
net stop mysql-iams
mysqld remove mysql-iams
cd..
cd..
cd apache-tomcat-7.0.72\bin
call shutdown.bat
三、建立project
打开InstallAnywhere,建立Typical Project Template,然后选择Advanced Designer,设置Title, Name等
四 、本地化语言
菜单Project>Locales>,选择需要的本地化语言。
五、设置环境变量
菜单Install>,按钮Add Action...>Set System Environment Variable>Add>,设JAVA_HOME和CATALINA_HOME,CATALINA_DIR,PATH 四个系统环境变量。其中$USER_INSTALL_DIR$表示用户选择的安装路径。
JAVA_HOME :$USER_INSTALL_DIR$\ jdk1.7.0_75
CATALINA_HOME:$USER_INSTALL_DIR$\ apache-tomcat-7.0.72
CATALINA_DIR:$USER_INSTALL_DIR$\ apache-tomcat-7.0.72\bin
PATH:$USER_INSTALL_DIR$\ jdk1.7.0_75\bin;$USER_INSTALL_DIR$\mysql5.0\bin;$USER_INSTALL_DIR$\apache-tomcat-7.0.72\bin;c:\windows\system32
然后把jdk,tomcat,mysql 通过按钮Add Files...添加进来放在 User Install Folder直接目录下,如图所示:

六、注册服务
1、菜单Post-Install>,按钮Add Action...>Execute Command>Add>,在安装完成后执行install.bat,注册Tomcat和MySQL服务。其中Command Line:cmd /c $USER_INSTALL_DIR$\install.bat $USER_INSTALL_DIR$。并且,选中Options中的3个选项。将该Execute Command移动到Panel: Install Complete前面。
2、然后添加按钮Add Action...>Motify Text File-Single File>Add>,然后在Installed file选中mysql安装目录下的my.in(如果没有这个文件,请先创建这样一个文件,内容为空),其中Additional Text选中第一个prepend,在文本框中输入:
# For advice on how to change settings please see
#http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#设置数据库引擎为INNODB
default-storage-engine=INNODB
# 设置mysql服务器编码
character_set_server=utf8
# 设置mysql服务器字符集
collation-server=utf8_general_ci
[client]
# 设置mysql客户端默认字符集
default-character-set = GBK
[WinMySQLAdmin]
Server = $USER_INSTALL_DIR$\mysql5.0\bin\mysqladmin.exe
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
# 设置mysql的安装目录,如果目录中带空格则必须加引号
basedir=$USER_INSTALL_DIR$\mysql5.0
# 设置mysql数据库的数据的存放目录,文件夹名必须是data
datadir = $USER_INSTALL_DIR$\mysql5.0\data
# 允许最大连接数
max_connections=200
#设置3306端口
# port = 3306
# server_id = 1
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
将该Motify Text File-Single File移动到Panel: Install Complete后面。
3、然后添加按钮Add Action...>Excute Script/Batch file>Add>,其中Commnet:启动mysql(就是启动mysql的,可以是写任意东西,只有自己懂就行)
Script中输入:net start mysql
将该Excute Script/Batch file移动到Motify Text File-Single File后面。
七、让安装完成后启动浏览器,自动打开项目
菜单Post-Install>,按钮Add Action...>Launch Default Browser>Add>OtherUrl中填入项地址 localhost:8080/ProjectName,将该Launch Default Browser移动到Panel: Install Complete后面。
八、反安装
菜单Pre-Uninstall>,按钮Add Action>Execute Command>Add>。
Command Line: cmd /c $USER_INSTALL_DIR$\uninstall.bat $USER_INSTALL_DIR$
将该Execute Command移动到第一个。选中Options中的3个选项。
九、打包
菜单Build>,按钮Build Project>,等待InstallAnywhere打包完成。
完成以后,按钮Open in Explorer>,文件夹Web_Installers>InstData>Windows>VM>,install.exe就是完成的安装文件包。
使用InstallAnywhere工具打包Java_Web程序的更多相关文章
- install4j 工具为java程序打包exe
用 install4j 工具为java程序打包exe 制作人:mark 制作时间:2013-05-02 用Eclipse 将程序源码打包成jar文件. 打包jar方法我不做介绍了,相信大家都会,不会的 ...
- 【程序打包工具 Inno Setup】CreateProcess 失败:代码 740(Inno Setup打包的程序提升为管理员权限)
原文参考 https://www.cnblogs.com/SnailProgramer/p/4243666.html http://blog.csdn.net/x356982611/article/d ...
- 不需要用任何辅助工具打包Qt应用程序
不需要用任何辅助工具打包Qt应用程序.方法如下: 生成release文件后,双击里面的exe文件,会弹出一个对话框,里面提示缺少哪一个DLL文件, 然后根据该文件名到你安装QT软件的目录下的/b ...
- InstallShield Limited Edition for Visual Studio 2013 图文教程(教你如何打包.NET程序)
InstallShield Limited Edition for Visual Studio 2013 图文教程(教你如何打包.NET程序) 标签: InstallShieldVS2013 2015 ...
- win环境下,用虚拟化工具打包Qt动态编译exe的过程(使用Enigma Virtual Box)
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://goldlion.blog.51cto.com/4127613/834075 引子 ...
- 使用Inno Setup 打包.NET程序,并自动安装.Net Framework
使用Inno Setup 打包.NET程序,并自动安装.Net Framework http://www.cnblogs.com/xiaogangqq123/archive/2012/03/19/24 ...
- vs2010打包winform程序详解
vs2010打包winform程序详解 最近一直在做winform程序,做完后程序打包很头疼,第三方打包工具,好用的花钱,不花钱的不好用,最后只能用vs自带的打包工具了! 打包过程vs2010(包 ...
- Windows如何打包Qt程序
很多Qt爱好者想发布自己的Qt软件,但却发现在其他没有安装Qt SDK的机器上无法运行,这就是本文想要说明的问题.现在网上大部分软件都要发布自己开发的应用程序,都会打包到exe文件中,待安装完exe文 ...
- Limited Edition for Visual Studio 2013 图文教程(教你如何打包.NET程序)
原文:InstallShield Limited Edition for Visual Studio 2013 图文教程(教你如何打包.NET程序) InstallShield Limited Edi ...
随机推荐
- Esay ui数据加载等待提示
以视频上传为例: //视频上传 function uploadVedio(fileName){ load();//开始加载时弹出加载层 $.post('< ...
- 【.net 深呼吸】聊聊WCF服务返回XML或JSON格式数据
有时候,为了让数据可以“跨国经营”,尤其是HTTP Web有关的东东,会将数据内容以 XML 或 JSON 的格式返回,这样一来,不管客户端平台是四大文明古国,还是处于蒙昧时代的原始部落,都可以使用这 ...
- Windows 批处理
1. 引言 在Windows上,经常需要做一些重复的工作.比如在不同的工作场所需要切换不同的ip:比如有时需要对一堆文件按1~n进行重命名:再比如我们需要删除一大堆文件,这些文件名字都差不多, ...
- Android 自定义View及其在布局文件中的使用示例
前言: 尽管Android已经为我们提供了一套丰富的控件,如:Button,ImageView,TextView,EditText等众多控件,但是,有时候在项目开发过程中,还是需要开发者自定义一些需要 ...
- Golang 生成随机数
package main import ( "fmt" "math/rand" "time" ) func main() { rand.Se ...
- Android之图片加载框架Fresco基本使用(二)
PS:最近看到很多人都开始写年终总结了,时间过得飞快,又到年底了,又老了一岁. 学习内容: 1.进度条 2.缩放 3.ControllerBuilder,ControllerListener,Post ...
- .NET跨平台之旅:将QPS 100左右的ASP.NET Core站点部署到Linux服务器上
今天下午我们将生产环境中一个单台服务器 QPS(每秒请求数)在100左右的 ASP.NET Core 站点部署到了 Linux 服务器上,这是我们解决了在 .NET Core 上使用 EnyimMem ...
- Less使用心得
初识less就被其函数式编程css深深吸引了,而函数式编写css带来的好处不言而喻,复用,复用,还是复用.话不多说下面简单介绍下个人使用less的心得 首先网上有很多less的安装教程,这边不多做介绍 ...
- C#WebBrowrse拦截下载对话框
为了实现这个功能,可算是折腾不少时间,网上搜素出来的结果基本都是如何屏蔽警告对话框.后来请教一个技术大牛(程序员之窗的主要作者Starts_2000),他用C++实现了,他尝试了下C#也没有解决,就忙 ...
- C++智能指针
引用计数技术及智能指针的简单实现 基础对象类 class Point { public: Point(int xVal = 0, int yVal = 0) : x(xVal), y(yVal) { ...