我有一个Java Webstart应用程序,其中包含文件关联。以前它可以通过弃用的API在Mac OS X中双击来打开文件。这不再有效,所以我将我的代码升级到新的非弃用API,但这也不起作用!
这是我的代码:
Application application = Application.getApplication();
application.setOpenFileHandler(new OpenFilesHandler() {
public void openFiles(OpenFilesEvent e) {
System.out.println("OpenFileHandler()");
}
});
application.setAboutHandler(new AboutHandler() {
public void handleAbout(AboutEvent e) {
System.out.println("AboutHandler()");
}
});
当我使用上面的代码运行我的应用程序时,我可以收到“AboutHandler()”打印正常,但我永远不会收到“OpenFileHandler()”打印。当我双击某个文件时,Mac OS X会将我的应用程序置于最前面,但它不会向其发送任何OpenFilesEvent事件。
我在Mac OS X 10.9.2上使用Java 7更新55
有人可以让OpenFileHandler在Java 7中工作吗? 难道我做错了什么? 这是一个Java错误吗?