Install4j ApplicationRegistry在linux上可用吗

Install4j ApplicationRegistry在linux上可用吗,install4j,Install4j,我希望install4j检测应用程序是否安装在客户的Linux设备上,但它可能安装在非标准位置。这可能吗?我在代码库中找到了一些似乎在Windows上运行的代码,但我不知道如何在Linux上实现这一点: installationApplicationRegistry.ApplicationInfo ApplicationInfo= ApplicationRegistry.getApplicationInfoByDir(context.getInstallationDirectory()) 谢谢

我希望install4j检测应用程序是否安装在客户的Linux设备上,但它可能安装在非标准位置。这可能吗?我在代码库中找到了一些似乎在Windows上运行的代码,但我不知道如何在Linux上实现这一点:

installationApplicationRegistry.ApplicationInfo ApplicationInfo= ApplicationRegistry.getApplicationInfoByDir(context.getInstallationDirectory())


谢谢

它确实在Linux上工作,但它使用Java首选项存储。如果您不是以root用户身份安装,此信息将位于用户特定的首选项存储中,因此,如果您使用同一用户运行安装程序,安装程序将只看到以前的安装。

Aha!我在/root/.java/.userPrefs/com/install4j/installations/prefs.xml中看到了安装路径——谢谢!诀窍是使用ApplicationRegistry.getApplicationInfoById()。对于附加安装程序,Install4j最初没有将sys.installationDir设置为上一次安装。