声明:我公司开发install4j。
首先,install4j是一个商业工具,所以这对NSIS来说是一个相当大的差异。其他主要区别如下:
- install4j是一个适用于Windows,Mac OS X和所有POSIX兼容Linux和Unix平台的多平台安装程序生成器。
- install4j的主要重点是安装基于Java的应用程序,例如它处理启动器和服务的创建,并提供多种捆绑JRE的策略。您需要的Java应用程序的许多功能都可以使用。
- install4j提供了专注于易用性的自己的IDE
- 脚本是在Java中完成的。 IDE提供了一个内置编辑器,其中包含代码完成和错误分析。动作,屏幕和表单组件具有广泛的“脚本属性”,允许您自定义安装程序的行为。
对于install4j,我可以解决您单要求:
确保有一个JRE机(32或64位)
在媒体向导中选择一个JRE束。如果您选择“动态绑定”选项,只有在找不到合适的JRE时才会下载该选项。
安装Tomcat(32位或64位)
我会建议直接在现有的Tomcat的安装根目录添加到您分发树。
至于服务,您可以使用Tomcat发行版中的Tomcat服务启动程序或在install4j中创建服务启动程序。在这两种情况下,您都可以使用“安装服务”操作来安装服务。
生成的服务的优点是更新安装程序知道它们正在运行并在安装任何新文件之前自动关闭它们。
为了运行这些脚本在Oracle中创建一个数据库或SQL Server(我们为此提供SQL脚本)
使用“运行可执行文件或批处理文件”的行动。
将一些值写入我们的设置表中,如主机名。 (可以得到用户验证这些, 但不希望用户必须点击它们。
任何类型的用户互动与配置的形式完成的。一对夫妇文本字段表格组件,您可以查询您的设置。
这也适用于透明的控制台安装程序并自动生成的响应文件将允许您以无人参与模式基于GUI的安装程序的一次执行自动安装。
创建一个连接属性文件(我们提供了一个微型JAR应用程序来帮助完成此操作), 将位于Tomcat下。
如果你已经有了一个JAR文件,其这样做,只是将它加入下Installer->自定义代码&资源,并添加一个“运行脚本”行动,您的安装程序使用的类的JAR文件。
从已保存上一步变量形式组件的任何用户输入可以调用像
context.getVariable("greetingOption")
在“运行脚本”操作(或install4j任何其他脚本)的脚本属性
访问。
我们有两个WAR文件用于我们的实际Web应用程序。这些可以分成两个 机器,但现在,让我们假设他们都被转储到Tomcat下。
如果您只是将Tomcat目录结构添加到分发树中,则可以预先部署这些WAR文件。否则,您可以使用“复制文件”操作将WAR文件放在任何地方。
启动Tomcat,使其展开的战争
这与“启动服务”的动作来完成。