低占用下载/安装程序

时间:2011-12-20 13:31:41

标签: install4j

我运行一个开源项目,通常以通用zip格式分发我们的代码。除了核心软件之外,我们还为该软件开发了几个社区开发的附加软件。

相反,让用户从不同的位置和网站下载所有选项,我想提供一个小型的安装程序

  • 根据需要下载并安装java。如果用户使用64位操作系统,则需要下载32位和64位。
  • 下载并解压缩核心软件zip文件
    • 允许用户选择最新的稳定版本或开发版本(两个不同的网站)
  • 选择其他软件选项(多个选项)
    • 分别下载每个(不同的网站)
    • 根据需要打开包装/安装
    • 写配置文件(纯文本)
  • 根据配置选项根据需要清理目录。
    • E.g。如果我选择可选软件“1”,则删除目录“X”

我不一定要在核心安装文件中提供所有这些额外的软件选项(事实上,如果我只提供一个占用空间小的安装程序,可以确定所有可用软件的最新版本(可能需要屏幕抓一些网站,其他人可能会提供一个带有版本号的文本文件)

Install4j适合这个吗?

我知道我必须编写一些代码来进行版本识别,但大多数情况下我想要一个带有引导路径的GUI,供用户选择选项并根据需要下载它们。

一旦我编写了脚本,我宁愿保留它,而不必一直编译新版本(如果可能的话),除了URL信息可能会改变的实例。

1 个答案:

答案 0 :(得分:1)

您可以使用“下载文件”操作从任意站点下载ZIP文件,然后“安装ZIP文件的内容”操作以根据需要安装它们。

对于向用户的演示,您可以使用标准安装组件工具,您可以在其中将安装组件订购到“安装组件”屏幕上显示的树中。您可以将所有安装组件留空。另一个优点是您可以为安装组件指定依赖项。

在“安装屏幕”中,我将添加包含“下载文件”/“安装ZIP文件内容”操作对的操作组(以及每个组件所需的任何其他操作)。每个操作组的条件表达式应设置为

context.getInstallationComponentById("123").isSelected()

其中“123”是相应安装组件的ID。

至于64位/ 32位:在Windows上,我建议只使用捆绑的32位JRE创建32位安装程序。这在64位JRE上同样适用。如有必要,必须创建单独的64位媒体文件。捆绑的JRE可以按需下载。

在Linux上,我不建议捆绑一个JRE。如有必要,请为32位Linux和64位Linux提供两个单独的媒体文件。

至于“用户的引导路径”,您可以在install4j中create custom screens