Home / Function/ configureResolveMainClassNameTask() — spring-boot Function Reference

configureResolveMainClassNameTask() — spring-boot Function Reference

Architecture documentation for the configureResolveMainClassNameTask() function in JavaPluginAction.java from the spring-boot codebase.

Function java GradlePlugin DslExtensions calls 3 called by 1

Entity Profile

Dependency Diagram

graph TD
  8e6e4fa9_a91d_099b_6a9a_f4a28c1dbbbb["configureResolveMainClassNameTask()"]
  74d8bc31_4ba2_e112_795c_80c2cc344e68["execute()"]
  74d8bc31_4ba2_e112_795c_80c2cc344e68 -->|calls| 8e6e4fa9_a91d_099b_6a9a_f4a28c1dbbbb
  aca8a5d3_3912_c52a_a3da_1ffd25d9758f["setClasspath()"]
  8e6e4fa9_a91d_099b_6a9a_f4a28c1dbbbb -->|calls| aca8a5d3_3912_c52a_a3da_1ffd25d9758f
  b009cfb1_29de_7602_32b4_af082fd04e23["getJavaApplicationMainClass()"]
  8e6e4fa9_a91d_099b_6a9a_f4a28c1dbbbb -->|calls| b009cfb1_29de_7602_32b4_af082fd04e23
  62834ef2_58c4_85a5_f697_b49484bec757["getMainClass()"]
  8e6e4fa9_a91d_099b_6a9a_f4a28c1dbbbb -->|calls| 62834ef2_58c4_85a5_f697_b49484bec757
  style 8e6e4fa9_a91d_099b_6a9a_f4a28c1dbbbb fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

build-plugin/spring-boot-gradle-plugin/src/main/java/org/springframework/boot/gradle/plugin/JavaPluginAction.java lines 109–134

	private TaskProvider<ResolveMainClassName> configureResolveMainClassNameTask(Project project) {
		return project.getTasks()
			.register(SpringBootPlugin.RESOLVE_MAIN_CLASS_NAME_TASK_NAME, ResolveMainClassName.class,
					(resolveMainClassName) -> {
						ExtensionContainer extensions = project.getExtensions();
						resolveMainClassName.setDescription("Resolves the name of the application's main class.");
						resolveMainClassName.setGroup(BasePlugin.BUILD_GROUP);
						Callable<FileCollection> classpath = () -> project.getExtensions()
							.getByType(SourceSetContainer.class)
							.getByName(SourceSet.MAIN_SOURCE_SET_NAME)
							.getOutput();
						resolveMainClassName.setClasspath(classpath);
						resolveMainClassName.getConfiguredMainClassName().convention(project.provider(() -> {
							String javaApplicationMainClass = getJavaApplicationMainClass(extensions);
							if (javaApplicationMainClass != null) {
								return javaApplicationMainClass;
							}
							SpringBootExtension springBootExtension = project.getExtensions()
								.findByType(SpringBootExtension.class);
							Assert.state(springBootExtension != null, "'springBootExtension' must not be null");
							return springBootExtension.getMainClass().getOrNull();
						}));
						resolveMainClassName.getOutputFile()
							.set(project.getLayout().getBuildDirectory().file("resolvedMainClassName"));
					});
	}

Domain

Subdomains

Called By

Frequently Asked Questions

What does configureResolveMainClassNameTask() do?
configureResolveMainClassNameTask() is a function in the spring-boot codebase.
What does configureResolveMainClassNameTask() call?
configureResolveMainClassNameTask() calls 3 function(s): getJavaApplicationMainClass, getMainClass, setClasspath.
What calls configureResolveMainClassNameTask()?
configureResolveMainClassNameTask() 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