Browse Source

Upgrade to Native Build Tools 0.11.0

Closes gh-46501
pull/46595/head
Andy Wilkinson 5 months ago
parent
commit
df609f4079
  1. 6
      build-plugin/spring-boot-gradle-plugin/src/test/java/org/springframework/boot/gradle/junit/GradleCompatibility.java
  2. 6
      build-plugin/spring-boot-gradle-plugin/src/test/java/org/springframework/boot/gradle/junit/GradleCompatibilityExtension.java
  3. 6
      build-plugin/spring-boot-gradle-plugin/src/test/java/org/springframework/boot/gradle/plugin/NativeImagePluginActionIntegrationTests.java
  4. 4
      build-plugin/spring-boot-gradle-plugin/src/test/resources/org/springframework/boot/gradle/plugin/NativeImagePluginActionIntegrationTests-classesGeneratedDuringAotTestProcessingAreOnTheTestNativeImageClasspath.gradle
  5. 2
      gradle.properties

6
build-plugin/spring-boot-gradle-plugin/src/test/java/org/springframework/boot/gradle/junit/GradleCompatibility.java

@ -48,6 +48,10 @@ public @interface GradleCompatibility { @@ -48,6 +48,10 @@ public @interface GradleCompatibility {
*/
boolean configurationCache() default false;
String versionsLessThan() default "";
/**
* Minimum version of Gradle against which compatibility should be tested.
* @return minimum version
*/
String minimumVersion() default "";
}

6
build-plugin/spring-boot-gradle-plugin/src/test/java/org/springframework/boot/gradle/junit/GradleCompatibilityExtension.java

@ -59,10 +59,10 @@ final class GradleCompatibilityExtension implements TestTemplateInvocationContex @@ -59,10 +59,10 @@ final class GradleCompatibilityExtension implements TestTemplateInvocationContex
GradleCompatibility gradleCompatibility = AnnotationUtils.findAnnotation(testClass, GradleCompatibility.class)
.get();
Stream<String> gradleVersions = GRADLE_VERSIONS.stream();
if (StringUtils.hasText(gradleCompatibility.versionsLessThan())) {
GradleVersion upperExclusive = GradleVersion.version(gradleCompatibility.versionsLessThan());
if (StringUtils.hasText(gradleCompatibility.minimumVersion())) {
GradleVersion lowerInclusive = GradleVersion.version(gradleCompatibility.minimumVersion());
gradleVersions = gradleVersions
.filter((version) -> GradleVersion.version(version).compareTo(upperExclusive) < 0);
.filter((version) -> GradleVersion.version(version).compareTo(lowerInclusive) >= 0);
}
return gradleVersions.flatMap((version) -> {
List<TestTemplateInvocationContext> invocationContexts = new ArrayList<>();

6
build-plugin/spring-boot-gradle-plugin/src/test/java/org/springframework/boot/gradle/plugin/NativeImagePluginActionIntegrationTests.java

@ -43,7 +43,7 @@ import static org.assertj.core.api.Assertions.assertThat; @@ -43,7 +43,7 @@ import static org.assertj.core.api.Assertions.assertThat;
* @author Andy Wilkinson
* @author Scott Frederick
*/
@GradleCompatibility
@GradleCompatibility(minimumVersion = "8.3")
class NativeImagePluginActionIntegrationTests {
GradleBuild gradleBuild;
@ -111,7 +111,9 @@ class NativeImagePluginActionIntegrationTests { @@ -111,7 +111,9 @@ class NativeImagePluginActionIntegrationTests {
@TestTemplate
void classesGeneratedDuringAotTestProcessingAreOnTheTestNativeImageClasspath() {
BuildResult result = this.gradleBuild.build("checkTestNativeImageClasspath");
BuildResult result = this.gradleBuild
.scriptProperty("junitVersion", TestTemplate.class.getPackage().getImplementationVersion())
.build("checkTestNativeImageClasspath");
assertThat(result.getOutput()).contains(projectPath("build/classes/java/aotTest"),
projectPath("build/resources/aotTest"), projectPath("build/generated/aotTestClasses"));
}

4
build-plugin/spring-boot-gradle-plugin/src/test/resources/org/springframework/boot/gradle/plugin/NativeImagePluginActionIntegrationTests-classesGeneratedDuringAotTestProcessingAreOnTheTestNativeImageClasspath.gradle

@ -25,6 +25,10 @@ repositories { @@ -25,6 +25,10 @@ repositories {
mavenCentral()
}
dependencies {
testImplementation("org.junit.jupiter:junit-jupiter:{junitVersion}")
}
task('checkTestNativeImageClasspath') {
doFirst {
tasks.nativeTestCompile.options.get().classpath.each { println it }

2
gradle.properties

@ -17,7 +17,7 @@ junitJupiterVersion=5.13.4 @@ -17,7 +17,7 @@ junitJupiterVersion=5.13.4
kotlinVersion=2.2.0
mavenVersion=3.9.10
mockitoVersion=5.18.0
nativeBuildToolsVersion=0.10.6
nativeBuildToolsVersion=0.11.0
snakeYamlVersion=2.4
springFrameworkVersion=7.0.0-M7
springFramework60xVersion=6.0.23

Loading…
Cancel
Save