configureBootWarTask() — spring-boot Function Reference
Architecture documentation for the configureBootWarTask() function in WarPluginAction.java from the spring-boot codebase.
Entity Profile
Dependency Diagram
graph TD bbac5d71_3e78_f521_e8fb_41fb8b4f68c5["configureBootWarTask()"] ba49de44_6245_e8f9_b5f0_4312efa51ef0["execute()"] ba49de44_6245_e8f9_b5f0_4312efa51ef0 -->|calls| bbac5d71_3e78_f521_e8fb_41fb8b4f68c5 8467ab57_ddbf_2ae1_3fde_ff1849a74a5c["providedRuntimeConfiguration()"] bbac5d71_3e78_f521_e8fb_41fb8b4f68c5 -->|calls| 8467ab57_ddbf_2ae1_3fde_ff1849a74a5c 6d4ad4b2_44c8_eb36_1456_7a7e9e9522c5["providedClasspath()"] bbac5d71_3e78_f521_e8fb_41fb8b4f68c5 -->|calls| 6d4ad4b2_44c8_eb36_1456_7a7e9e9522c5 f0de44a2_0b96_e639_b305_a662633a580e["javaPluginExtension()"] bbac5d71_3e78_f521_e8fb_41fb8b4f68c5 -->|calls| f0de44a2_0b96_e639_b305_a662633a580e feb966ea_beeb_802f_021b_f252aefa2b42["resolvedArtifacts()"] bbac5d71_3e78_f521_e8fb_41fb8b4f68c5 -->|calls| feb966ea_beeb_802f_021b_f252aefa2b42 style bbac5d71_3e78_f521_e8fb_41fb8b4f68c5 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
build-plugin/spring-boot-gradle-plugin/src/main/java/org/springframework/boot/gradle/plugin/WarPluginAction.java lines 72–110
private TaskProvider<BootWar> configureBootWarTask(Project project) {
Configuration developmentOnly = project.getConfigurations()
.getByName(SpringBootPlugin.DEVELOPMENT_ONLY_CONFIGURATION_NAME);
Configuration testAndDevelopmentOnly = project.getConfigurations()
.getByName(SpringBootPlugin.TEST_AND_DEVELOPMENT_ONLY_CONFIGURATION_NAME);
Configuration productionRuntimeClasspath = project.getConfigurations()
.getByName(SpringBootPlugin.PRODUCTION_RUNTIME_CLASSPATH_CONFIGURATION_NAME);
SourceSet mainSourceSet = project.getExtensions()
.getByType(SourceSetContainer.class)
.getByName(SourceSet.MAIN_SOURCE_SET_NAME);
Configuration runtimeClasspath = project.getConfigurations()
.getByName(mainSourceSet.getRuntimeClasspathConfigurationName());
Callable<FileCollection> classpath = () -> mainSourceSet.getRuntimeClasspath()
.minus(providedRuntimeConfiguration(project))
.minus((developmentOnly.minus(productionRuntimeClasspath)))
.minus((testAndDevelopmentOnly.minus(productionRuntimeClasspath)))
.filter(new JarTypeFileSpec());
Callable<FileCollection> providedClasspath = () -> providedRuntimeConfiguration(project)
.filter(new JarTypeFileSpec());
TaskProvider<ResolveMainClassName> resolveMainClassName = project.getTasks()
.named(SpringBootPlugin.RESOLVE_MAIN_CLASS_NAME_TASK_NAME, ResolveMainClassName.class);
TaskProvider<BootWar> bootWarProvider = project.getTasks()
.register(SpringBootPlugin.BOOT_WAR_TASK_NAME, BootWar.class, (bootWar) -> {
bootWar.setGroup(BasePlugin.BUILD_GROUP);
bootWar.setDescription("Assembles an executable war archive containing webapp"
+ " content, and the main classes and their dependencies.");
bootWar.providedClasspath(providedClasspath);
bootWar.setClasspath(classpath);
Provider<String> manifestStartClass = project
.provider(() -> (String) bootWar.getManifest().getAttributes().get("Start-Class"));
bootWar.getMainClass()
.convention(resolveMainClassName.flatMap((resolver) -> manifestStartClass.isPresent()
? manifestStartClass : resolver.readMainClassName()));
bootWar.getTargetJavaVersion()
.set(project.provider(() -> javaPluginExtension(project).getTargetCompatibility()));
bootWar.resolvedArtifacts(runtimeClasspath.getIncoming().getArtifacts().getResolvedArtifacts());
});
return bootWarProvider;
}
Domain
Subdomains
Calls
- javaPluginExtension()
- providedClasspath()
- providedRuntimeConfiguration()
- resolvedArtifacts()
Called By
Source
Frequently Asked Questions
What does configureBootWarTask() do?
configureBootWarTask() is a function in the spring-boot codebase.
What does configureBootWarTask() call?
configureBootWarTask() calls 4 function(s): javaPluginExtension, providedClasspath, providedRuntimeConfiguration, resolvedArtifacts.
What calls configureBootWarTask()?
configureBootWarTask() is called by 1 function(s): execute.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free