非无头模式:Apple AWT Java VM在第一个线程上加载

时间:2013-03-12 13:46:54

标签: java macos awt javafx-2 headless

我正在eclipse中开发一个maven构建的JavaFX 2应用程序。

Windows上运行正常,但Mac OSX导致问题。我必须包含以下行以防止应用程序以无头模式启动:

System.setProperty("java.awt.headless", "false");

然而,禁用无头模式就是在Mac上给我这个错误:

  

java [15689:707] Cocoa AWT:Apple AWT Java VM   在第一个线程上加载 - 无法启动AWT。 (

     

0 liblwawt.dylib
  0x000000016674fba2 JNI_OnLoad + 468 1 libjava.dylib
  0x00000001037286d1 Java_java_lang_ClassLoader_00024NativeLibrary_load   + 207 2 ??? 0x00000001037fef90 0x0 + 4353683344)应用程序启动方法中的异常

在无头模式下运行没有问题,但我需要Robot类来处理keyPress事件。我甚至都不知道为什么在我不需要的时候它会无所事事。

1 个答案:

答案 0 :(得分:1)

由于AWT要求在AWT应用程序的main线程上运行,因此它与JavaFX不兼容。您可以在此处找到解决方法:JavaFX screencapture headless exception on OSX