class KotlinDslKotlinGradleBuildCustomizer extends KotlinGradleBuildCustomizer {

	KotlinDslKotlinGradleBuildCustomizer(KotlinProjectSettings kotlinProjectSettings) {
		super(kotlinProjectSettings);
	}

	@Override
	protected void customizeKotlinOptions(KotlinProjectSettings settings, GradleTask.Builder compile) {<FILL_FUNCTION_BODY>}

	private String compilerArgsAsString(List<String> compilerArgs) {
		if (compilerArgs.size() == 1) {
			return "\"" + compilerArgs.get(0) + "\"";
		}
		String values = compilerArgs.stream().map((arg) -> "\"" + arg + "\"").collect(Collectors.joining(", "));
		return "listOf(%s)".formatted(values);
	}

}

		compile.nested("kotlinOptions", (kotlinOptions) -> {
			kotlinOptions.append("freeCompilerArgs", compilerArgsAsString(settings.getCompilerArgs()));
			kotlinOptions.attribute("jvmTarget", "\"" + settings.getJvmTarget() + "\"");
		});
	
<methods>public void customize(io.spring.initializr.generator.buildsystem.gradle.GradleBuild) <variables>private final non-sealed io.spring.initializr.generator.spring.code.kotlin.KotlinProjectSettings settings