为什么异常在JavaFX onDragOver事件处理程序中被静默丢弃?

时间:2018-10-05 17:27:10

标签: java exception javafx

执行此代码时,错误将被忽略并且不会传播给用户。这导致我寻找错误的时间比原本应该花费的时间长得多。是故意的还是fx实施中的错误?

public class OmittedException extends Application{

    public static void main(String[] args) {
        launch(args);       
    }

    @Override
    public void start(Stage primaryStage) throws Exception {

        Pane p = new Pane();
        p.setPrefSize(200,200);

        //throws error as expected
//      p.setOnDragDetected( e->{
//          throw new NullPointerException();
//      });
//      
        p.setOnDragOver( e ->{
            throw new NullPointerException();
        });

        primaryStage.setScene(new Scene(p));
        primaryStage.show();        
    } 
}

将任何文件拖到窗格上,您将不会收到任何指示抛出错误的指示。该块中的所有后续代码都不会执行。

Java 10. Windows 10

0 个答案:

没有答案