mirror of
https://github.com/spring-projects/spring-boot.git
synced 2024-09-03 04:26:12 +08:00
Update spring-boot-loader to allow `-javaagent` instrumentation when running from executable jars. Prior to this commit the `Launcher` skipped the application classloader and instead used the system classloader as a parent. This was to ensure that locally packaged classes were always loaded by the classloader that had access to nested jars. Unfortunately when using the `-javaagent` option, it is the application classloader that is modified. The `Launcher` class now uses the application classloader as parent and `LaunchedURLClassLoader` has been updated to always search local URLs before delegating to the parent. This is very similar to the way that most application servers handle the loading of war files. Issue: #56232870 |
||
---|---|---|
.. | ||
spring-boot-gradle-plugin | ||
spring-boot-loader | ||
spring-boot-loader-tools | ||
spring-boot-maven-plugin | ||
pom.xml | ||
README.md |
Spring Boot - Tools
Spring Boot Tools provides a logical grouping for our various build system plugins, and the modules that support them. We provide a spring-boot-maven-plugin and spring-boot-gradle-plugin for Maven and Gradle respectively.
If you are interested in how we support executable archives, take a look at the spring-boot-loader module. If you need to create executable archives from a different build system, spring-boot-loader-tools may help.