我们最近将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中的一个已知问题,是否有针对此问题的解决方法?
答案 0 :(得分:0)
使用install4j 7,您不能再使用macOS EAWT API中已弃用的Application.getApplication().addApplicationListener()
,您必须使用新的API方法:
Application.getApplication().setQuitHandler((quitEvent, quitResponse) -> {
quitResponse.cancelQuit();
// TODO add your code
});