Fixed npe in finalguard
CI / Compile, test and publish (push) Has been cancelled

This commit is contained in:
2026-07-13 17:10:34 +08:00
parent 185456c10e
commit b6004a7085
3 changed files with 34 additions and 5 deletions
@@ -16,6 +16,7 @@ import org.gradle.api.tasks.compile.JavaCompile;
import javax.tools.Diagnostic;
import java.io.File;
import java.net.URL;
import java.util.Optional;
import java.util.jar.Attributes;
import java.util.jar.Manifest;
@@ -56,7 +57,10 @@ public class FinalGuardPlugin implements Plugin<Project> {
tasks.withType(JavaCompile.class, javaCompileTask -> {
javaCompileTask.doFirst(t -> {
final CompileOptions options = javaCompileTask.getOptions();
options.setAnnotationProcessorPath(options.getAnnotationProcessorPath().plus(javacPluginConfiguration));
options.setAnnotationProcessorPath(Optional.ofNullable(options.getAnnotationProcessorPath())
.orElseGet(project::files)
.plus(javacPluginConfiguration)
);
final StringBuilder xpluginArg = new StringBuilder("-Xplugin:").append(JAVAC_PLUGIN_NAME);
appendOption(xpluginArg, "default.level", finalGuardExtension.getDefaultLevel());
appendOption(xpluginArg, "local.variable.level", finalGuardExtension.getLocalVariableLevel());