KotlinPluginAction Class — spring-boot Architecture
Architecture documentation for the KotlinPluginAction class in KotlinPluginAction.java from the spring-boot codebase.
Entity Profile
Source Code
build-plugin/spring-boot-gradle-plugin/src/main/java/org/springframework/boot/gradle/plugin/KotlinPluginAction.java lines 33–72
class KotlinPluginAction implements PluginApplicationAction {
@Override
public void execute(Project project) {
configureKotlinVersionProperty(project);
enableJavaParametersOption(project);
repairDamageToAotCompileConfigurations(project);
}
private void configureKotlinVersionProperty(Project project) {
ExtraPropertiesExtension extraProperties = project.getExtensions().getExtraProperties();
if (!extraProperties.has("kotlin.version")) {
String kotlinVersion = getKotlinVersion(project);
extraProperties.set("kotlin.version", kotlinVersion);
}
}
private String getKotlinVersion(Project project) {
return KotlinPluginWrapperKt.getKotlinPluginVersion(project);
}
private void enableJavaParametersOption(Project project) {
project.getTasks()
.withType(KotlinCompile.class)
.configureEach((compile) -> compile.getCompilerOptions().getJavaParameters().set(true));
}
private void repairDamageToAotCompileConfigurations(Project project) {
SpringBootAotPlugin aotPlugin = project.getPlugins().findPlugin(SpringBootAotPlugin.class);
if (aotPlugin != null) {
aotPlugin.repairKotlinPluginDamage(project);
}
}
@Override
public Class<? extends Plugin<? extends Project>> getPluginClass() {
return KotlinPluginWrapper.class;
}
}
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free