第二次 运行 时,JavaFX 冻结 Mac
JavaFX Freezes Mac When Running Second Time
当我第二次 运行 时,以下命令完全冻结了我的 MacBook Pro(在 Eclipse 中和直接从命令行)。第一次显示 GUI 和应用程序 运行 时如预期的那样,但是当我停止并重新 运行 它完全以完全相同的方式完全冻结计算机时。
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(final Stage primaryStage) throws Exception {
final Scene scene = new Scene(new StackPane());
primaryStage.setTitle("Hello Crash!");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(final String... arguments) {
launch(arguments);
}
}
有人知道吗?我认为解决方案可能是 –launcher.secondThread、-XstartOnFirstThread、-XstartOnSecondThread 的某种组合,就像 运行 在 Mac 上使用 OSGI 设置 Swing GUI 一样,但我还没有任何成功。
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)
我遇到了同样的事情,发现这是 OS X 切换显卡的问题 - 我通过安装 gfx.io 并将 OS X 强制为一个解决了这个问题显卡
当我第二次 运行 时,以下命令完全冻结了我的 MacBook Pro(在 Eclipse 中和直接从命令行)。第一次显示 GUI 和应用程序 运行 时如预期的那样,但是当我停止并重新 运行 它完全以完全相同的方式完全冻结计算机时。
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(final Stage primaryStage) throws Exception {
final Scene scene = new Scene(new StackPane());
primaryStage.setTitle("Hello Crash!");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(final String... arguments) {
launch(arguments);
}
}
有人知道吗?我认为解决方案可能是 –launcher.secondThread、-XstartOnFirstThread、-XstartOnSecondThread 的某种组合,就像 运行 在 Mac 上使用 OSGI 设置 Swing GUI 一样,但我还没有任何成功。
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)
我遇到了同样的事情,发现这是 OS X 切换显卡的问题 - 我通过安装 gfx.io 并将 OS X 强制为一个解决了这个问题显卡