• Andy Wilkinson's avatar
    Align launcher exception handling with direct invocation of main method · 2dc3660a
    Andy Wilkinson authored
    Previously, if an application’s main method threw an exception,
    MainMethodRunner would catch the exception and call System.exit(1).
    This meant that the JVM would exit, irrespective of whether or not
    any non-daemon threads were running. In contrast, when an application’s
    main method was invoked directly (in an IDE, for example) the JVM
    would not exit if one or more non-daemon threads were running. This
    is standard JVM behaviour that we should be consistent with in the
    launcher.
    
    This commit updates MainMethodRunner to wrap any exception thrown by an
    application’s main method in a RuntimeException and rethrow it. This
    alllows the JVM to handle the exception and use its normal rules for
    deciding whether or not it should exit.
    
    Closes gh-4984
    2dc3660a
Name
Last commit
Last update
..
spring-boot-antlib Loading commit data...
spring-boot-configuration-metadata Loading commit data...
spring-boot-configuration-processor Loading commit data...
spring-boot-gradle-plugin Loading commit data...
spring-boot-loader Loading commit data...
spring-boot-loader-tools Loading commit data...
spring-boot-maven-plugin Loading commit data...
pom.xml Loading commit data...