安装JavaEE应用程序的好的InstallAnywhere替代品是什么?

安装JavaEE应用程序的好的InstallAnywhere替代品是什么?,java,installation,jakarta-ee,windows-installer,Java,Installation,Jakarta Ee,Windows Installer,您建议将哪个(商业或免费)安装工具替换为JavaEE应用程序的安装程序?你特别喜欢它的哪些方面?它的缺点是什么 一些要求: 作为安装过程的一部分,必须支持运行自定义Java代码 必须支持Windows,包括最新的64位版本,如Windows Server 2008;支持其他目标操作系统优先 必须能够将捆绑的应用程序服务器(如或)作为服务安装在Windows上 必须支持诸如复制和移动文件、编辑配置文件、提取拉链等基本功能 (必须支持捆绑特定版本的JRE;至少通过包含要提取的ZIP) 编辑:还有

您建议将哪个(商业或免费)安装工具替换为JavaEE应用程序的安装程序?你特别喜欢它的哪些方面?它的缺点是什么

一些要求:

  • 作为安装过程的一部分,必须支持运行自定义Java代码
  • 必须支持Windows,包括最新的64位版本,如Windows Server 2008;支持其他目标操作系统优先
  • 必须能够将捆绑的应用程序服务器(如或)作为服务安装在Windows上
  • 必须支持诸如复制和移动文件、编辑配置文件、提取拉链等基本功能
  • (必须支持捆绑特定版本的JRE;至少通过包含要提取的ZIP)
编辑:还有几点:

  • 最好不依赖于目标机器上预安装的JRE(或任何其他第三方运行时环境或库);换句话说,可以生成独立的Windows.exe(或.msi)
  • 该工具最好是跨平台的,以便可以在Linux、Windows或Mac上进行安装程序开发
  • 最好有一个像样的GUI来组装安装程序。但是,一旦完成,就必须能够跳过GUI,使安装程序构建成为自动构建过程的一部分

我见过一些人推荐,但我真的不知道它是否符合您的要求。它至少是免费的:)

你可能对它感兴趣,我可以担保。它是基于Ant的,因此您可以在其中打包Ant安装,并且Ant安装可以包含自定义任务和/或Ant build.xml中编写的脚本(例如,使用Groovy、Beanshell或任何支持BSF的脚本语言)。因此,它将满足您的定制需求

我以前在上面的所有代码中都使用过它——解压/服务/自定义代码。它是多平台的,尽管我不能保证上面的特定实例(64位Windows)。但是,如果它运行Java,您应该不会有问题


令人头痛的是JRE。您显然需要一些JRE来运行这个。但是,我认为您应该能够在izPack中打包并执行特定的JRE安装。

Sun提供了一个开源安装程序:

我确信您请求的所有功能都得到支持。
但对我来说,配置起来似乎有点太难了

但是你猜怎么着:它不仅有一个GUI,还有一个(伪图形)CLI。
很好的屏幕截图和信息。

我们创建了一个跨平台安装工具,它是在经历了InstallAnywhere的一些令人沮丧的经历之后,特别是它的表亲(现已不存在)InstallShield MP。超过一半的客户使用我们的工具来打包基于Java的软件,但该工具是本机的,而不是基于Java的。这意味着我们有很多优势,比如原生外观(包括Vista、GTK、Qt等),安装前无需进行自解压缩(启动速度更快,空间要求更少),等等。要回答您的具体问题:

  • 支持在多个时间点(例如显示某个页面、复制文件、卸载时等)调用Java代码作为安装的一部分。代码不会在安装程序中编译,但可以在外部调用它,并在安装程序中使用结果。如果您更具体地了解需要哪种代码,我可以提供具体的示例代码。对于需要手动添加到其他安装程序的功能,我们有很多内置操作,因此您可能不需要首先编写这些代码
  • 我们支持所有版本的Windows,包括64位和Windows 2008(多个客户使用我们的安装程序在这些平台上进行了认证)
  • 我们支持捆绑应用服务器,包括Tomcat、Resin、JBoss等。看看我们创建的此类堆栈的示例
  • 我们支持复制和移动文件、替换配置文件中的值、解包文件和大多数其他常见的安装功能。我们的原则之一是,安装程序应该为常见的安装操作提供内置支持,并具有一个简单、干净的接口,用于调用特定于客户端产品的外部代码
  • 我们支持绑定JRE,正如您所提到的,这通常足以绑定JRE目录并在启动脚本中为JAVA_HOME设置适当的值

您可以看看我们的一些产品,如MySQL、三星、摩托罗拉、GitHub等。InstallBuilder是一种商业产品,但我们为开源项目提供免费许可证,并为小型企业和微型ISV提供折扣。

不幸的是,在这种情况下,我们没有告诉我们很多我们不知道的内容(事实上,我们最终选择的工具在任何回答中都没有提到)。不过,我在这里发布我们的经验,因为它们可能会对以后的其他人有所帮助

我们(很快)评估了以下安装工具,主要是通过查看它们的网站和浏览web上的其他信息:、、、、、和

我们很早就筛选出了其中的大部分,最后筛选出了两个选项进行更深入的评估:。对于这些工具,我们下载了评估版本并进行了一些原型设计,以查看对我们来说最重要的东西是否得到了真正的支持,以及让它们工作起来有多容易或难

这两个选项在很多方面都很好(而且似乎都是InstallAnywhere的好选择):

  • 他们生产的Windows.exe安装程序完全是本机的,非常漂亮 易于定制您自己的图形等
  • 这两个工具都可以很容易地实现自动化,因此安装程序的构建是由Ant触发的。(使用install4j,我只花了五分钟就完成了安装并实现了它。)