install4j 7 - Mac OSX中的handleQuit()不再被调用

时间:2017-07-28 12:51:28

标签: java install4j

我们最近将install4j版本更新为7(7.0.1),我们将应用程序交付给所有平台,包括Mac OSX。

在Mac OSX上,我们通过注册com.apple.eawt.ApplicationListener来响应显示在桌面顶部的菜单。当用户选择通过此菜单退出应用程序时,我们会调用handleQuit()方法。

随着最近升级到install4j 7(和7.0.1),我们不再接收对handleQuit()的调用。因此,我无法在OS X上退出我的应用程序。

这曾经在install4j 7之前正常工作。这是install4j 7中的一个已知问题,是否有针对此问题的解决方法?

1 个答案:

答案 0 :(得分:0)

使用install4j 7,您不能再使用macOS EAWT API中已弃用的Application.getApplication().addApplicationListener(),您必须使用新的API方法:

Application.getApplication().setQuitHandler((quitEvent, quitResponse) -> {
        quitResponse.cancelQuit();
// TODO add your code
});