Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Installation “我怎么能?”;“引导”;非install4j软件安装的install4j升级安装?_Installation_Install4j - Fatal编程技术网

Installation “我怎么能?”;“引导”;非install4j软件安装的install4j升级安装?

Installation “我怎么能?”;“引导”;非install4j软件安装的install4j升级安装?,installation,install4j,Installation,Install4j,我已经决定将install4j作为我的项目的首选安装包。在许多其他优势中,据我所知,它内置了对升级的支持。不过我确实有一个奇怪的问题 是否有最佳实践或任何可重用代码来支持install4j安装程序的“引导”概念,以及它需要的任何元数据,以支持升级使用“自产”安装机制安装的产品的较旧版本 与我假设的许多项目一样,我们的项目已经存在多年了,有一大堆InstallShield安装程序用于Windows和BASH脚本用于Unix。我们使用install4j来整合所有这些 一些可能有趣的后续问题可能是:

我已经决定将install4j作为我的项目的首选安装包。在许多其他优势中,据我所知,它内置了对升级的支持。不过我确实有一个奇怪的问题

是否有最佳实践或任何可重用代码来支持install4j安装程序的“引导”概念,以及它需要的任何元数据,以支持升级使用“自产”安装机制安装的产品的较旧版本

与我假设的许多项目一样,我们的项目已经存在多年了,有一大堆InstallShield安装程序用于Windows和BASH脚本用于Unix。我们使用install4j来整合所有这些

一些可能有趣的后续问题可能是: 1.有没有办法在API中设置isUpgradeInstallation()返回的值? 2.如果我在.install4j目录中放置一个文件,并且在新安装程序中嵌入了应用程序ID,那么install4j可以使用它运行吗


如果您有任何想法/建议,我们将不胜感激。

通常您会添加自定义逻辑来处理遗留升级的情况

但是,您可以通过在包含
i4jparams.conf
文件的旧安装目录中创建.install4j目录,将旧安装转换为“伪”install4j安装。在这个伪造的配置文件中,唯一重要的信息是版本信息和应用程序ID,您可以删除所有其他信息

然后
context.isUpdateInstallation()
将返回true