我正在使用 Linux 并尝试从 Oracle 的 JDK 切换到 OpenJDK 和 OpenJFX,但我在使用 JavaFX 应用程序时遇到了严重问题。
以这个简单的程序为例:
import javafx.application.Application;
import javafx.scene.control.Alert;
import javafx.scene.control.Alert.AlertType;
import javafx.stage.Stage;
public class AlertTest2 extends Application {
@Override
public void start(final Stage primaryStage) throws Exception {
final Alert alert = new Alert(AlertType.INFORMATION, "test alert");
alert.setContentText("content goes here");
alert.showAndWait();
}
public static void main(final String... args) {
launch(args);
}
}
如果我使用 Oracle JDK 版本 8 运行它,它工作得非常好并显示一个警告窗口。但是对于 OpenJDK 和 OpenJFX 版本 11,我得到的只是:
我还尝试了 ZuluFX 版本 8(包含 OpenJFX 的 OpenJDK 版本),它正常工作大约 8 次,其他时间如图所示切断警报对话框以上。
有没有其他人遇到过这个问题?可能是什么原因造成的,我该如何解决?