Java应用程序的安装程序

8iwquhpp  于 2023-05-12  发布在  Java
关注(0)|答案(5)|浏览(117)

我想知道有哪些软件包可以用来创建安装程序来分发应用程序。
目标应用程序用Java编写。安装程序必须能够:

  • 通过ant脚本编译
  • 编译Linux(和Windows)
  • 在Windows和Linux上运行
    *检测/处理以前安装的应用程序版本

我们目前使用IzPack,因为它做了以上所有的事情,除了后者:它不能很容易地检测到以前安装的软件版本,这是我们的交易破坏者。
还有其他符合要求的套餐吗?
谢谢你!

muk1a3rh

muk1a3rh1#

我想你可能错过了izPack的CheckedHelloPanel,它(根据在线文档)检查注册表,看看是否已经安装了另一个版本,并询问你是否要安装第二个版本。
OTOH ...如果你的意思是安装程序应该能够对以前的版本进行就地升级,那是一个非常困难的问题,我还没有遇到过一个安装程序构建器,甚至试图解决这个问题。

编辑在非Windows平台上,存在一个基本问题。如果应用程序可以安装在非标准位置,则不可能100%确定以前是否安装了(相同或不同版本的)副本。这可能是为什么CheckedHelloPanel只支持Windows上的旧版本检测的根本原因。

话虽如此,izPack是开源的,所以如果您能找到一种方法来检测Linux上的早期版本,那么您可以修改CheckedHelloPanel来实现它。也许izPack会接受补丁。无论如何,我建议您在放弃您满意的工具之前先看看这种方法。(特别是如果你想做的事情根本无法在Linux上完成。

qacovj5a

qacovj5a2#

install4j可以满足您的所有需求。

dwbf0jvd

dwbf0jvd3#

InstallJammer试试。它是免费的,开源的,应该做你想要的。具体来说,它不仅可以检测以前的安装,而且实际上还具有一些复杂的功能,可以检测多个以前的版本并从中收集所需的信息。
下载并给予一下,如果您有任何问题,请访问论坛并询问。我通常会快速而完整地回答每个人。0-]

n9vozmp4

n9vozmp44#

给予我们的工具,BitRock InstallBuilder它满足您的所有要求

dwbf0jvd

dwbf0jvd5#

InstallAnywhere可以做到这一切,ISMP(InstallShield Muli-Platform)在Flexera还在销售时就做到了这一切,但它们是商业软件。我不知道一个免费的等价物,做所有这些事情。

相关问题