Commit Graph

353 Commits (a630baf32abb558f1b4b8e896ab8ea0dbea924b8)

Author SHA1 Message Date
Phillip Webb 55b5610dd9 Add Maven and Gradle option for the loader implementation to use
Add properties to the Maven and Gradle plugins so that users can
switch between the two loader modules.

See gh-37669
1 year ago
Phillip Webb a89057b7c7 Reintroduce spring-boot-loader modules
Restore the `spring-boot-loader` with the previous loader code so
that we can develop it further.

See gh-37669
1 year ago
Phillip Webb aeb6537f57 Rename spring-boot-loader to spring-boot-loader-classic
Rename the `spring-boot-loader` module to `spring-boot-loader-classic`
so that we can introduce an alternative loader implementation.

See gh-37669
1 year ago
Phillip Webb c22548982a Relocate launcher classes
Create alternative launcher classes under the package
`org.springframework.boot.loader.launch` and use them in favor
of the previous location.

This update is designed to improve compatibility with future
changes in the loader.

Closes gh-37667
1 year ago
Phillip Webb 3d6859e80f Use the term "uber jar" in reference documentation and javadoc
Update reference documentation and javadoc to use the term "uber jar"
rather than "fat jar".

Closes gh-37653
1 year ago
Phillip Webb 780f75d5a2 Polish 1 year ago
Phillip Webb e3036dcb99 Merge branch '3.1.x'
Closes gh-37658
1 year ago
Phillip Webb 7bb60fc7c7 Merge branch '2.7.x' into 3.0.x
Closes gh-37656
1 year ago
Phillip Webb ed4ab667a1 Enable LoaderIntegrationTests on aarch64
Closes gh-37654
1 year ago
Moritz Halbritter a7373c182a Merge branch '3.1.x'
Closes gh-37523
1 year ago
Moritz Halbritter 58941d85f2 Merge branch '2.7.x' into 3.0.x
Closes gh-37521
1 year ago
Moritz Halbritter f96690348f Use Bellsoft JDK 21 in LoaderIntegrationTests
Closes gh-35900
1 year ago
Andy Wilkinson 3eb89343d0 Merge branch '2.7.x' into 3.0.x 1 year ago
Andy Wilkinson c4368bc934 Run LoaderIntegrationTests on Java 21
See gh-37359
1 year ago
Andy Wilkinson a84e2db285 Merge branch '3.1.x' 1 year ago
Andy Wilkinson b29b35905c Merge branch '2.7.x' into 3.0.x 1 year ago
Andy Wilkinson 2656f02001 Fix launch script integration tests on Intel Macs
Closes gh-36799
1 year ago
Andy Wilkinson ed5d16de84 Upgrade to Jetty 12
Closes gh-36073
1 year ago
Moritz Halbritter e532b3b830 Merge branch '3.1.x'
Closes gh-37141
1 year ago
Moritz Halbritter c749fcb478 Merge branch '2.7.x' into 3.0.x
Closes gh-37139
1 year ago
Moritz Halbritter 0f6342a882 Make JarLaunchScript and SysVinit integration tests ARM64 compatible
Closes gh-36799
1 year ago
Andy Wilkinson bc88a133d3 Merge branch '3.1.x'
Closes gh-36869
1 year ago
Andy Wilkinson 1b7467adc3 Merge branch '2.7.x' into 3.0.x
Closes gh-36867
1 year ago
Andy Wilkinson 1765f4e9cf Ensure that server tests run when test apps have changed
Closes gh-19858
1 year ago
Scott Frederick c600be74ff Merge branch '3.1.x'
Closes gh-36542
1 year ago
Scott Frederick c5d2415834 Merge branch '2.7.x' into 3.0.x
Closes gh-36540
1 year ago
Scott Frederick 90be62bc7a Update Docker images used for launch script tests
Closes gh-24349
1 year ago
Andy Wilkinson 6d8ca7286a Merge branch '3.1.x'
Closes gh-36128
1 year ago
Andy Wilkinson 93f8bd2170 Merge branch '2.7.x' into 3.0.x
Closes gh-36126
1 year ago
Andy Wilkinson 996252f929 Stop using deprecated classifier property
Closes gh-36125
1 year ago
Andy Wilkinson dbb24286ff Separate stopping and destruction so web server can be restarted
Previously, when a Servlet-based WebServer was stopped it would also
stop the ServletContext. This led to problems as Tomcat and Undertow
would then not allow a restart. Jetty would allow a restart but
duplicate servlet registrations would then be attempted.

This commit modifies the WebServer lifecycle to separate stopping
and destruction for both servlet and reactive web servers. This
allows a WebServer's stop() implementation to leave some components
running so that they can be restarted. To completely shut down a
WebServer destroy() must now be called.

Both Tomcat and Jetty WebServers have been updated to stop their
network connections when stop() is called but leave other components
running. This works with both servlet and reactive web servers.

Note that an Undertow-based Servlet web server does not support
stop and restart. Once stopped, a Servlet Deployment cannot be
restarted and it does not appear to be possible to separate the
lifecycle of its network connections and a Servlet deployment.

Reactor Netty and Undertow-based reactive web servers can now also
be stopped and then restarted. Calling stop() stops the whole server
but this does not cause a problem as there's no (application-exposed)
ServletContext involved. There may be room to optimize this in the
future if the need arises.

Closes gh-34955
1 year ago
Moritz Halbritter 23979e6ccf Enable LoaderIntegrationTests on Java 21 1 year ago
Moritz Halbritter 372af21313 Merge branch '2.7.x' into 3.0.x 1 year ago
Moritz Halbritter 140e806357 Enable LoaderIntegrationTests on Java 20
See gh-35758
1 year ago
Moritz Halbritter c2dd20f4ea Merge branch '2.7.x' into 3.0.x 2 years ago
Moritz Halbritter f5eb76074b Disable loader integration tests on aarch64 linux and mac
See gh-35229
2 years ago
Moritz Halbritter f3d0bc7a99 Disable launch script integration tests on aarch64 linux and mac
See gh-35229
2 years ago
Phillip Webb d1f89db9a2 Merge branch '2.7.x' into 3.0.x 2 years ago
Phillip Webb d39c94f437 Refine ConfigurationProcessorIntegrationTests resource detection logic 2 years ago
Phillip Webb c4de86c244 Merge branch '2.7.x' into 3.0.x 2 years ago
Phillip Webb df5898a146 Reformat code following spring-javaformat upgrade 2 years ago
Krzysztof Krason 6e46423983 Use diamond operators
See gh-33987
2 years ago
Andy Wilkinson b67c427259 Upgrade to Servlet 6.0 and related EE 10 specs
Co-authored-by: Phillip Webb <pwebb@vmware.com>

Closes gh-33036
Closes gh-33037
Closes gh-33038
Closes gh-33039
Closes gh-33040
Closes gh-33041
Closes gh-33042
Closes gh-33043
2 years ago
Phillip Webb d7941c6315 Polish 2 years ago
Phillip Webb 4be3218cb6 Merge branch '2.7.x' 2 years ago
Scott Frederick c22e76632c Add Build-Jdk-Spec to jar and war manifest when building with Gradle
This commit adds a `Build-Jdk-Spec` attribute to the manifest in a
jar or war file built with the Spring Boot Gradle plugin. This
aligns the Gradle plugin's behavior with the default Maven plugin
behavior.

This removes the need to set a `BP_JVM_VERSION` environment variable
when invoking Cloud Native Buildpacks, as the Paketo buildpacks will
honor `Build-Jdk-Spec` in a jar or war manifest to determine the
default JVM version.

Fixes gh-32829
2 years ago
Phillip Webb e0b67889a8 Use Stream.toList instead of Stream.collect when possible
Update code to make use of `Stream.toList()` whenever possible.

Closes gh-28177
2 years ago
Brian Clozel a0735eb3fb Migrate remaining usage of httpclient API
This commit migrates our remaining usage of the httpclient 4.x to use
instead httpclient5, now that the 4.x support has been removed in
`RestTemplate`.

Closes gh-32461
2 years ago
Brian Clozel 5fb2a50ad0 Adapt build dependencies to httpclient5
As htttpclient 4.x is not supported anymore by `RestTemplate`, this
commit changes such dependencies to httpclient5 instead. In some cases,
the httpclient 4.x was transitively brought by a non-Spring dependency.

See gh-32461
2 years ago
Stephane Nicoll 72fc1f0018 Merge branch '2.7.x'
Closes gh-32512
2 years ago