Java安装程序 – 需要帮助

首先,您好,感谢您花时间帮我解决问题。

我需要用Java开发一个使用SQLite的应用程序。 应用程序需要跨平台(从Windows XP开始,Linux和MAC)。

我需要选择一个安装程序(免费或付费),它将检查目标机器上是否安装了JRE,是否安装它,安装和创建数据库并安装应用程序。

如果您有任何安装人员的经验,请推荐它并告诉我它的优点和缺点。 我需要编译一个列表,并需要将它呈现给我的项目经理,以便他可以采取适当的行动。

提前致谢!

PS很多人都推荐过IzPack。 它不是一个选项,因为它已经需要JVM才能运行。

首先,大多数包装解决方案都可以选择将JRE打包在安装程序中。 因此,可执行文件,无论是exe,bin还是rpm,都将附带适当的JRE。 这是更好的方法,因为如果您假设JRE在目标系统上可用,例如:权限,JRE安装位置,JRE版本等,它可以最大限度地减少您可能遇到的意外问题的数量。

可执行文件将解压缩随附的JRE并启动Java应用程序(您的安装程序)。

有许多多平台包装解决方案,包括免费/开源和商业。

最受欢迎的商业广告是Flexera的InstallAnywhere 。 它带有方便的IDE,基于XML的bean配置(在基于UI的安装过程中将bean视为单个步骤或屏幕)以及您可能希望在安装期间执行的许多自定义检查。 您可以使用响应文件创建静默安装,以将安装发送到企业内的许多框中。 您还可以为安装创建自定义bean,以执行自定义逻辑。

Install4J也是商业解决方案 – 我没有尝试过,因为它不支持我需要的所有平台。

另一个商业安装向导是Denova的JExpress。 它也是完全可定制的,并且具有与InstallAnywhere相同的平台支持范围,它具有全套function,但自定义安装的开发不那么方便,与Windows操作系统的集成较少(我玩它的时候我无法执行注册表检查,并根据结果执行actionA或操作B)。

我试过的开源包装向导是lzpack,它很好而且灵活,但缺乏良好的文档会影响你完成工作的时间。

InstallJammer是另一个开源,但它不支持所有平台 – 只有基本的Windows和Linux平台,但我认为这个项目已经停止。

祝你好运!

我需要选择一个安装程序(免费或付费),它将检查目标机器上是否安装了JRE,是否安装它,安装和创建数据库并安装应用程序。

我建议采用两部分策略。

  1. 检查是否安装了合适的JRE,如果没有,则引导用户进行升级。 令人惊讶的是,最好使用Oracle自己提供/维护的JavaScript 。 它是deployJava.js 。 如果您接受确保JRE存在的工具不是安装程序本身的一部分,那么可能会大大打开潜在安装程序的领域,但我有一个最喜欢的。
  2. 安装富客户端应用程序。 本身使用Java Web Start 。 JWS非常棒,我必须重复我在该信息上写的模糊。 页面

Java Web Start(JWS)是Oracle Corporation用于直接从网络或Internet链接启动富客户端 (Swing,AWT,SWT)桌面应用程序的技术。 它为支持Java的平台提供“一键式”安装。

JWS提供了许多吸引人的function,包括但不限于启动屏幕,桌面集成,文件关联,自动更新(包括延迟下载和程序化更新控制),按平台,体系结构或Java版本,配置对本机和其他资源下载进行分区运行时环境(最小J2SE版本,运行时选项,RAM等),使用扩展轻松管理公共资源。

好吧,我找到了关于如何创建OS X安装程序的指南对于Windows来说,似乎JSmooth可以满足您的需求。

您也可以仔细查看BitRock Installer 。