Skip to content

Commit 86f2501

Browse files
committed
Apply nullability-plugin through ConventionsPlugin
See gh-46587
1 parent c0f1f64 commit 86f2501

File tree

3 files changed

+10
-2
lines changed

3 files changed

+10
-2
lines changed

buildSrc/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ dependencies {
6464
implementation("org.springframework:spring-core")
6565
implementation("org.springframework:spring-web")
6666
implementation("org.yaml:snakeyaml:${snakeYamlVersion}")
67+
implementation("io.spring.gradle.nullability:nullability-plugin:${nullabilityPluginVersion}")
6768

6869
testImplementation(platform("org.junit:junit-bom:${junitJupiterVersion}"))
6970
testImplementation("org.assertj:assertj-core:${assertjVersion}")

buildSrc/src/main/java/org/springframework/boot/build/JavaConventions.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import com.gradle.develocity.agent.gradle.test.DevelocityTestConfiguration;
2828
import com.gradle.develocity.agent.gradle.test.PredictiveTestSelectionConfiguration;
2929
import com.gradle.develocity.agent.gradle.test.TestRetryConfiguration;
30+
import io.spring.gradle.nullability.NullabilityPlugin;
3031
import io.spring.javaformat.gradle.SpringJavaFormatPlugin;
3132
import io.spring.javaformat.gradle.tasks.CheckFormat;
3233
import io.spring.javaformat.gradle.tasks.Format;
@@ -68,8 +69,8 @@
6869
* <ul>
6970
* <li>The project is configured with source and target compatibility of 17
7071
* <li>{@link SpringJavaFormatPlugin Spring Java Format}, {@link CheckstylePlugin
71-
* Checkstyle}, {@link TestFailuresPlugin Test Failures}, and {@link ArchitecturePlugin
72-
* Architecture} plugins are applied
72+
* Checkstyle}, {@link TestFailuresPlugin Test Failures}, {@link ArchitecturePlugin
73+
* Architecture} and {@link NullabilityPlugin} plugins are applied
7374
* <li>{@link Test} tasks are configured:
7475
* <ul>
7576
* <li>to use JUnit Platform
@@ -140,6 +141,7 @@ void apply(Project project) {
140141
configureToolchain(project);
141142
configureProhibitedDependencyChecks(project);
142143
configureFactoriesFilesChecks(project);
144+
configureNullability(project);
143145
});
144146
}
145147

@@ -335,4 +337,8 @@ private void configureFactoriesFilesChecks(Project project) {
335337
});
336338
}
337339

340+
private void configureNullability(Project project) {
341+
project.getPlugins().apply(NullabilityPlugin.class);
342+
}
343+
338344
}

gradle.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,6 @@ snakeYamlVersion=2.4
2222
springFrameworkVersion=7.0.0-M7
2323
springFramework60xVersion=6.0.23
2424
tomcatVersion=11.0.9
25+
nullabilityPluginVersion=0.0.2
2526

2627
kotlin.stdlib.default.dependency=false

0 commit comments

Comments
 (0)