当从Start方法调用System.Exit时,JavaFX8中出现奇怪的异常

当从Start方法调用System.Exit时,JavaFX8中出现奇怪的异常,java,exception,stream,javafx,system,Java,Exception,Stream,Javafx,System,如果我有一个带有这个start方法的JavaFX应用程序,我会得到一个错误,说流找不到要写入的文件,或者它不存在,这很奇怪,因为PrintStream类上的构造函数说它将创建文件。但是,当System.exit语句被删除时,is将正常工作。发生了什么事 `@Override public void start(Stage stage) throws Exception { Parent root = FXMLLoader.load(getClass().getResource("FXML

如果我有一个带有这个start方法的JavaFX应用程序,我会得到一个错误,说流找不到要写入的文件,或者它不存在,这很奇怪,因为PrintStream类上的构造函数说它将创建文件。但是,当System.exit语句被删除时,is将正常工作。发生了什么事

`@Override
public void start(Stage stage) throws Exception {
    Parent root = FXMLLoader.load(getClass().getResource("FXMLDocument.fxml"));

    Scene scene = new Scene(root);

    stage.setScene(scene);
    stage.show();
    System.setOut(new PrintStream(Paths.get("Resources",
            System.nanoTime() + ".dat").toFile()));
    System.out.println("Hello World!");
    System.exit(0);
}`
例外情况:

原因:java.io.FileNotFoundException:Resources\Error Logs\86138494710083.dat(系统找不到指定的路径)

要退出JavaFX应用程序,您应该调用,而不是


我不知道您的特定
FileNotFoundException
异常与什么有关。但是,我认为最好干净地关闭JavaFX平台,以便完成测试。我认为,如果不彻底关闭平台,可能会出现不可预测的行为。

发现问题所在,它试图写入文件夹,而不是文件。无论如何,谢谢你,从现在起我会打电话给
Platform.exit()