使用JavaFX和Swing的Mac断言失败

时间:2014-11-06 20:39:07

标签: java swing javafx

首先:不,我不是想在JPanel中嵌入JavaFX面板。

我在JavaFX中有一个应用程序,但我需要使用JFrame。 据我了解,他们可以共存,但我收到一个错误(断言失败)。 我正进入(状态: bug screenshot

箭头显示:

  1. JFrame打开
  2. Java版本== 1.7.0_71
  3. 错误
  4. 要重现的代码是:

    public static void main(String[] args) {
        javax.swing.SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                JFrame f = new JFrame("Test");
                f.setVisible(true);
            }});
    
        try {
            Thread.sleep(5000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println("TEST");
        App.launch(args);
    }
    

    如果我删除了Thread.sleep(),我没有收到任何错误,但是我的JavaFX App没有启动。 如果我保留Thread.sleep(),我会收到错误。 如果我删除了invokeLater(),我会得到一个HeadlessException

    我无法转向Java 8。

    我将不胜感激任何帮助

0 个答案:

没有答案