Skip to content
This repository was archived by the owner on Feb 23, 2023. It is now read-only.

Commit 697840d

Browse files
committed
Upgrade to Spring Boot 2.7.7
It fixes Spring Boot 2.7.6+ compatiblity. Closes gh-1740
1 parent 3d655ba commit 697840d

File tree

14 files changed

+27
-28
lines changed

14 files changed

+27
-28
lines changed

pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
<asm.version>9.2</asm.version>
1515
<graalvm.version>22.1.0.1</graalvm.version>
1616
<docs.resources.version>0.2.1.RELEASE</docs.resources.version>
17-
<spring.boot.version>2.7.1</spring.boot.version>
17+
<spring.boot.version>2.7.7</spring.boot.version>
1818
<spring.cloud.version>2021.0.3</spring.cloud.version>
1919
<spring.security.authorization-server.version>0.1.0</spring.security.authorization-server.version>
2020
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

samples/commandlinerunner-gradle/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
plugins {
2-
id 'org.springframework.boot' version '2.7.1'
2+
id 'org.springframework.boot' version '2.7.7'
33
id 'io.spring.dependency-management' version '1.0.11.RELEASE'
44
id 'org.springframework.experimental.aot' version '0.12.2-SNAPSHOT'
55
id 'java'

samples/commandlinerunner-log4j2/.ignore

Whitespace-only changes.

samples/maven-parent/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<parent>
88
<groupId>org.springframework.boot</groupId>
99
<artifactId>spring-boot-starter-parent</artifactId>
10-
<version>2.7.1</version>
10+
<version>2.7.7</version>
1111
<relativePath/>
1212
</parent>
1313
<groupId>org.springframework.experimental</groupId>

samples/multi-modules/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
plugins {
22
id 'io.spring.dependency-management' version '1.0.11.RELEASE'
3-
id 'org.springframework.boot' version '2.7.1' apply false
3+
id 'org.springframework.boot' version '2.7.7' apply false
44
id 'org.springframework.experimental.aot' version '0.12.2-SNAPSHOT' apply false
55
}
66

samples/multi-modules/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>org.springframework.boot</groupId>
77
<artifactId>spring-boot-starter-parent</artifactId>
8-
<version>2.7.1</version>
8+
<version>2.7.7</version>
99
<relativePath/> <!-- lookup parent from repository -->
1010
</parent>
1111
<groupId>com.example</groupId>

samples/security-kotlin/build.gradle.kts

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
22
import org.springframework.boot.gradle.tasks.bundling.BootBuildImage
33

44
plugins {
5-
id("org.springframework.boot") version "2.7.1"
5+
id("org.springframework.boot") version "2.7.7"
66
id("io.spring.dependency-management") version "1.0.10.RELEASE"
77
id("org.springframework.experimental.aot") version "0.12.2-SNAPSHOT"
88
kotlin("jvm") version "1.6.10"

samples/webmvc-kotlin/build.gradle.kts

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
22
import org.springframework.boot.gradle.tasks.bundling.BootBuildImage
33

44
plugins {
5-
id("org.springframework.boot") version "2.7.1"
5+
id("org.springframework.boot") version "2.7.7"
66
id("io.spring.dependency-management") version "1.0.10.RELEASE"
77
id("org.springframework.experimental.aot") version "0.12.2-SNAPSHOT"
88
kotlin("jvm") version "1.6.10"

spring-aot-maven-plugin/src/it/runner/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>org.springframework.boot</groupId>
77
<artifactId>spring-boot-starter-parent</artifactId>
8-
<version>2.7.1</version>
8+
<version>2.7.7</version>
99
<relativePath/> <!-- lookup parent from repository -->
1010
</parent>
1111
<groupId>io.spring.test</groupId>

spring-aot/src/main/java/org/springframework/boot/AotApplicationContextFactory.java

+8-15
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import org.springframework.core.env.ConfigurableEnvironment;
2727
import org.springframework.core.env.StandardEnvironment;
2828
import org.springframework.core.io.ResourceLoader;
29+
import org.springframework.util.Assert;
2930

3031
/**
3132
* Prepare an application context for AOT processing.
@@ -75,25 +76,17 @@ private GenericApplicationContext createApplicationContext(SpringApplication app
7576
}
7677

7778
private static ConfigurableEnvironment getOrCreateEnvironment(WebApplicationType webApplicationType) {
78-
switch (webApplicationType) {
79-
case SERVLET:
80-
return new ApplicationServletEnvironment();
81-
case REACTIVE:
82-
return new ApplicationReactiveWebEnvironment();
83-
default:
84-
return new ApplicationEnvironment();
85-
}
79+
ConfigurableEnvironment environment = ApplicationContextFactory.DEFAULT.createEnvironment(webApplicationType);
80+
return (environment != null) ? environment : new ApplicationEnvironment();
8681
}
8782

8883
private static Class<? extends StandardEnvironment> deduceEnvironmentClass(WebApplicationType webApplicationType) {
89-
switch (webApplicationType) {
90-
case SERVLET:
91-
return ApplicationServletEnvironment.class;
92-
case REACTIVE:
93-
return ApplicationReactiveWebEnvironment.class;
94-
default:
95-
return ApplicationEnvironment.class;
84+
Class<? extends ConfigurableEnvironment> environmentType = ApplicationContextFactory.DEFAULT.getEnvironmentType(webApplicationType);
85+
if (environmentType == null) {
86+
return ApplicationEnvironment.class;
9687
}
88+
Assert.isAssignable(StandardEnvironment.class, environmentType);
89+
return (Class<? extends StandardEnvironment>) environmentType;
9790
}
9891

9992
private void bindToSpringApplication(ConfigurableEnvironment environment, SpringApplication application) {

spring-aot/src/test/java/org/springframework/boot/AotApplicationContextFactoryTests.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import org.springframework.core.env.ConfigurableEnvironment;
2929
import org.springframework.core.io.DefaultResourceLoader;
3030
import org.springframework.core.io.ResourceLoader;
31+
import org.springframework.web.context.support.StandardServletEnvironment;
3132

3233
import static org.assertj.core.api.Assertions.assertThat;
3334

@@ -43,7 +44,8 @@ void createApplicationContextDetectTypeFromClasspath() {
4344
GenericApplicationContext context = new AotApplicationContextFactory(createResourceLoader("empty"))
4445
.createApplicationContext(TestApplication.class);
4546
assertThat(context).isInstanceOf(AnnotationConfigServletWebServerApplicationContext.class);
46-
assertThat(context.getEnvironment()).isInstanceOf(ApplicationServletEnvironment.class);
47+
assertThat(context.getEnvironment()).isInstanceOf(StandardServletEnvironment.class);
48+
assertThat(context.getEnvironment().getClass().getName()).endsWith("ApplicationServletEnvironment");
4749
assertThat(context.isRunning()).isFalse();
4850
}
4951

spring-native-configuration/src/main/java/org/springframework/hateoas/config/HateoasHints.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
import org.springframework.nativex.domain.proxies.JdkProxyDescriptor;
4242
import org.springframework.nativex.hint.AccessBits;
4343
import org.springframework.nativex.hint.FieldHint;
44+
import org.springframework.nativex.hint.ResourceHint;
4445
import org.springframework.nativex.hint.TypeAccess;
4546
import org.springframework.nativex.hint.InitializationHint;
4647
import org.springframework.nativex.hint.InitializationTime;
@@ -100,7 +101,8 @@
100101
imports = {
101102
PluginHints.class,
102103
JacksonHints.class,
103-
}
104+
},
105+
resources = @ResourceHint(patterns = "org/springframework/web/context/ContextLoader.properties")
104106
)
105107
public class HateoasHints implements NativeConfiguration, TypeSystemNativeConfiguration {
106108

spring-native-configuration/src/test/java/org/springframework/nativex/ResourcesTests.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,9 @@ public void testApacheTomcatResources() throws Exception {
3030
InputStream s = this.getClass().getResourceAsStream("/META-INF/native-image/org.apache.tomcat.embed/tomcat-embed-core/tomcat-resource.json");
3131
ResourcesDescriptor read = ResourcesJsonMarshaller.read(s);
3232
Assert.assertTrue(read.getBundles().contains("javax.servlet.LocalStrings"));
33-
Assert.assertTrue(read.getPatterns().contains(".*/mbeans-descriptors.xml$"));
33+
Assert.assertTrue(read.getPatterns().contains("^org/apache/tomcat/.*mbeans-descriptors\\.xml$"));
34+
Assert.assertTrue(read.getPatterns().contains("^org/apache/catalina/.*mbeans-descriptors\\.xml$"));
35+
Assert.assertTrue(read.getPatterns().contains("^org/apache/coyote/.*mbeans-descriptors\\.xml$"));
3436
}
3537

3638
@Test

spring-native-docs/src/main/asciidoc/attributes.adoc

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,14 @@
2727
:graalvm-native-buildtools: https://github.com/graalvm/native-build-tools
2828
:graalvm-native-buildtools-version: 0.9.13
2929

30-
:spring-boot-version: 2.7.1
30+
:spring-boot-version: 2.7.7
3131
:spring-boot-docs: https://docs.spring.io/spring-boot/docs/{spring-boot-version}/reference
3232
:spring-boot-gradle-plugin-docs: https://docs.spring.io/spring-boot/docs/{spring-boot-version}/gradle-plugin/reference/htmlsingle/
3333
:spring-boot-maven-plugin-docs: https://docs.spring.io/spring-boot/docs/{spring-boot-version}/maven-plugin/reference/htmlsingle/
3434

3535
:spring-cloud-version: 2021.0.3
3636

37-
:spring-framework-version: current
37+
:spring-framework-version: 5.3.x
3838
:spring-framework-api: https://docs.spring.io/spring-framework/docs/{spring-framework-version}/javadoc-api
3939
:spring-framework-docs: https://docs.spring.io/spring-framework/docs/{spring-framework-version}/reference
4040

0 commit comments

Comments
 (0)