You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Tree:
9abca48a7f
1.0.x
1.1.x
1.2.x
1.3.x
1.4.x
1.5.x
2.0.x
2.1.x
2.2.x
2.3.x
2.4.x
2.5.x
2.6.x
2.7.x
3.0.x
3.1.x
3.2.x
3.3.x
3.4.x
3.5.x
4.0.x
docs-build
main
temp/gradle-windows-problem
v0.5.0.M1
v0.5.0.M2
v0.5.0.M3
v0.5.0.M4
v0.5.0.M5
v0.5.0.M6
v0.5.0.M7
v1.0.0.RC1
v1.0.0.RC2
v1.0.0.RC3
v1.0.0.RC4
v1.0.0.RC5
v1.0.0.RELEASE
v1.0.1.RELEASE
v1.0.2.RELEASE
v1.1.0.M1
v1.1.0.M2
v1.1.0.RC1
v1.1.0.RELEASE
v1.1.1.RELEASE
v1.1.10.RELEASE
v1.1.11.RELEASE
v1.1.12.RELEASE
v1.1.2.RELEASE
v1.1.3.RELEASE
v1.1.4.RELEASE
v1.1.5.RELEASE
v1.1.6.RELEASE
v1.1.7.RELEASE
v1.1.8.RELEASE
v1.1.9.RELEASE
v1.2.0.M1
v1.2.0.M2
v1.2.0.RC1
v1.2.0.RC2
v1.2.0.RELEASE
v1.2.1.RELEASE
v1.2.2.RELEASE
v1.2.3.RELEASE
v1.2.4.RELEASE
v1.2.5.RELEASE
v1.2.6.RELEASE
v1.2.7.RELEASE
v1.2.8.RELEASE
v1.3.0.M1
v1.3.0.M2
v1.3.0.M3
v1.3.0.M4
v1.3.0.M5
v1.3.0.RC1
v1.3.0.RELEASE
v1.3.1.RELEASE
v1.3.2.RELEASE
v1.3.3.RELEASE
v1.3.4.RELEASE
v1.3.5.RELEASE
v1.3.6.RELEASE
v1.3.7.RELEASE
v1.3.8.RELEASE
v1.4.0.M1
v1.4.0.M2
v1.4.0.M3
v1.4.0.RC1
v1.4.0.RELEASE
v1.4.1.RELEASE
v1.4.2.RELEASE
v1.4.3.RELEASE
v1.4.4.RELEASE
v1.4.5.RELEASE
v1.4.6.RELEASE
v1.4.7.RELEASE
v1.5.0.RC1
v1.5.0.RELEASE
v1.5.1.RELEASE
v1.5.10.RELEASE
v1.5.11.RELEASE
v1.5.12.RELEASE
v1.5.13.RELEASE
v1.5.14.RELEASE
v1.5.15.RELEASE
v1.5.16.RELEASE
v1.5.17.RELEASE
v1.5.18.RELEASE
v1.5.19.RELEASE
v1.5.2.RELEASE
v1.5.20.RELEASE
v1.5.21.RELEASE
v1.5.22.RELEASE
v1.5.3.RELEASE
v1.5.4.RELEASE
v1.5.5.RELEASE
v1.5.6.RELEASE
v1.5.7.RELEASE
v1.5.8.RELEASE
v1.5.9.RELEASE
v2.0.0.M1
v2.0.0.M2
v2.0.0.M3
v2.0.0.M4
v2.0.0.M5
v2.0.0.M6
v2.0.0.M7
v2.0.0.RC1
v2.0.0.RC2
v2.0.0.RELEASE
v2.0.1.RELEASE
v2.0.2.RELEASE
v2.0.3.RELEASE
v2.0.4.RELEASE
v2.0.5.RELEASE
v2.0.6.RELEASE
v2.0.7.RELEASE
v2.0.8.RELEASE
v2.0.9.RELEASE
v2.1.0.M1
v2.1.0.M2
v2.1.0.M3
v2.1.0.M4
v2.1.0.RC1
v2.1.0.RELEASE
v2.1.1.RELEASE
v2.1.10.RELEASE
v2.1.11.RELEASE
v2.1.12.RELEASE
v2.1.13.RELEASE
v2.1.14.RELEASE
v2.1.15.RELEASE
v2.1.16.RELEASE
v2.1.17.RELEASE
v2.1.18.RELEASE
v2.1.2.RELEASE
v2.1.3.RELEASE
v2.1.4.RELEASE
v2.1.5.RELEASE
v2.1.6.RELEASE
v2.1.7.RELEASE
v2.1.8.RELEASE
v2.1.9.RELEASE
v2.2.0.M1
v2.2.0.M2
v2.2.0.M3
v2.2.0.M4
v2.2.0.M5
v2.2.0.M6
v2.2.0.RC1
v2.2.0.RELEASE
v2.2.1.RELEASE
v2.2.10.RELEASE
v2.2.11.RELEASE
v2.2.12.RELEASE
v2.2.13.RELEASE
v2.2.2.RELEASE
v2.2.3.RELEASE
v2.2.4.RELEASE
v2.2.5.RELEASE
v2.2.6.RELEASE
v2.2.7.RELEASE
v2.2.8.RELEASE
v2.2.9.RELEASE
v2.3.0.M1
v2.3.0.M2
v2.3.0.M3
v2.3.0.M4
v2.3.0.RC1
v2.3.0.RELEASE
v2.3.1.RELEASE
v2.3.10.RELEASE
v2.3.11.RELEASE
v2.3.12.RELEASE
v2.3.2.RELEASE
v2.3.3.RELEASE
v2.3.4.RELEASE
v2.3.5.RELEASE
v2.3.6.RELEASE
v2.3.7.RELEASE
v2.3.8.RELEASE
v2.3.9.RELEASE
v2.4.0
v2.4.0-M1
v2.4.0-M2
v2.4.0-M3
v2.4.0-M4
v2.4.0-RC1
v2.4.1
v2.4.10
v2.4.11
v2.4.12
v2.4.13
v2.4.2
v2.4.3
v2.4.4
v2.4.5
v2.4.6
v2.4.7
v2.4.8
v2.4.9
v2.5.0
v2.5.0-M1
v2.5.0-M2
v2.5.0-M3
v2.5.0-RC1
v2.5.1
v2.5.10
v2.5.11
v2.5.12
v2.5.13
v2.5.14
v2.5.15
v2.5.2
v2.5.3
v2.5.4
v2.5.5
v2.5.6
v2.5.7
v2.5.8
v2.5.9
v2.6.0
v2.6.0-M1
v2.6.0-M2
v2.6.0-M3
v2.6.0-RC1
v2.6.1
v2.6.10
v2.6.11
v2.6.12
v2.6.13
v2.6.14
v2.6.15
v2.6.2
v2.6.3
v2.6.4
v2.6.5
v2.6.6
v2.6.7
v2.6.8
v2.6.9
v2.7.0
v2.7.0-M1
v2.7.0-M2
v2.7.0-M3
v2.7.0-RC1
v2.7.1
v2.7.10
v2.7.11
v2.7.12
v2.7.13
v2.7.14
v2.7.15
v2.7.16
v2.7.17
v2.7.18
v2.7.2
v2.7.3
v2.7.4
v2.7.5
v2.7.6
v2.7.7
v2.7.8
v2.7.9
v3.0.0
v3.0.0-M1
v3.0.0-M2
v3.0.0-M3
v3.0.0-M4
v3.0.0-M5
v3.0.0-RC1
v3.0.0-RC2
v3.0.1
v3.0.10
v3.0.11
v3.0.12
v3.0.13
v3.0.2
v3.0.3
v3.0.4
v3.0.5
v3.0.6
v3.0.7
v3.0.8
v3.0.9
v3.1.0
v3.1.0-M1
v3.1.0-M2
v3.1.0-RC1
v3.1.0-RC2
v3.1.1
v3.1.10
v3.1.11
v3.1.12
v3.1.2
v3.1.3
v3.1.4
v3.1.5
v3.1.6
v3.1.7
v3.1.8
v3.1.9
v3.2.0
v3.2.0-M1
v3.2.0-M2
v3.2.0-M3
v3.2.0-RC1
v3.2.0-RC2
v3.2.1
v3.2.10
v3.2.11
v3.2.12
v3.2.2
v3.2.3
v3.2.4
v3.2.5
v3.2.6
v3.2.7
v3.2.8
v3.2.9
v3.3.0
v3.3.0-M1
v3.3.0-M2
v3.3.0-M3
v3.3.0-RC1
v3.3.1
v3.3.10
v3.3.11
v3.3.12
v3.3.13
v3.3.2
v3.3.3
v3.3.4
v3.3.5
v3.3.6
v3.3.7
v3.3.8
v3.3.9
v3.4.0
v3.4.0-M1
v3.4.0-M2
v3.4.0-M3
v3.4.0-RC1
v3.4.1
v3.4.10
v3.4.11
v3.4.12
v3.4.13
v3.4.2
v3.4.3
v3.4.4
v3.4.5
v3.4.6
v3.4.7
v3.4.8
v3.4.9
v3.5.0
v3.5.0-M1
v3.5.0-M2
v3.5.0-M3
v3.5.0-RC1
v3.5.1
v3.5.10
v3.5.2
v3.5.3
v3.5.4
v3.5.5
v3.5.6
v3.5.7
v3.5.8
v3.5.9
v4.0.0
v4.0.0-M1
v4.0.0-M2
v4.0.0-M3
v4.0.0-RC1
v4.0.0-RC2
v4.0.1
v4.0.2
v4.1.0-M1
${ noResults }
spring-boot/spring-boot-devtools
DevTools deliberately throws an uncaught exception on the main thread as a safe way of causing it to stop processing. This exception is caught and swallowed by an uncaught exception handler. Unfortunately, this has the unwanted side-effect of causing the JVM to exit with 1 once all running threads are daemons. Normally, this isn't a problem. Non-daemon threads, such as those started by an embedded servlet container, will keep the JVM alive and restarts of the application context will occur when the user makes to their application. However, if the user adds DevTools to an application that doesn't start any non-daemon threads, i.e. it starts, runs, and then exits, it will exit with 1. This causes both bootRun in Gradle and spring-boot:run in Maven to report that the build has failed. While there's no benefit to using DevTools with an application that behaves in this way, the side-effect of causing the JVM to exit with 1 is unwanted. This commit address the problem by updating the uncaught exception handler to call System.exit(0) if the JVM is going to exit as a result of the uncaught exception causing the main thread to die. In other words, if the main thread was the only non-daemon thread, its death as a result of the uncaught exception will now cause the JVM to exit with 1 rather than 0. If there are other non-daemon threads that will keep the JVM alive, the behaviour is unchanged. Closes gh-5968 |
10 years ago | |
|---|---|---|
| .. | ||
| src | Prevent JVM from exiting with 1 when main thread is only non-daemon | 10 years ago |
| pom.xml | Next Development Version | 10 years ago |