diff --git a/jOOQ-codegen-gradle/src/main/java/org/jooq/codegen/gradle/CodegenPlugin.java b/jOOQ-codegen-gradle/src/main/java/org/jooq/codegen/gradle/CodegenPlugin.java index b444c4f22f..980f95f495 100644 --- a/jOOQ-codegen-gradle/src/main/java/org/jooq/codegen/gradle/CodegenPlugin.java +++ b/jOOQ-codegen-gradle/src/main/java/org/jooq/codegen/gradle/CodegenPlugin.java @@ -73,10 +73,6 @@ public class CodegenPlugin implements Plugin { Configuration codegenClasspath = project.getConfigurations().create("jooqCodegen"); codegenClasspath.setDescription("The classpath used for code generation, including JDBC drivers, code generation extensions, etc."); - SourceSetContainer source = project - .getExtensions() - .getByType(SourceSetContainer.class); - jooq.getExecutions().create("", configuration -> { configuration.unnamed = true; configuration.configuration = NamedConfiguration.init(new org.jooq.meta.jaxb.Configuration()); @@ -93,13 +89,13 @@ public class CodegenPlugin implements Plugin { CodegenTask.class, configuration, codegenClasspath - ).configure(configureTask(named, source, configuration)); + ).configure(configureTask(project, named, configuration)); }); } private static Action configureTask( + Project project, List named, - SourceSetContainer source, NamedConfiguration configuration ) { return task -> { @@ -113,10 +109,16 @@ public class CodegenPlugin implements Plugin { task.setDescription("jOOQ code generation" + (configuration.unnamed ? " for all executions" : " for the " + configuration.name + " execution")); task.setGroup("jOOQ"); - source.configureEach(sourceSet -> { - if (sourceSet.getName().equals("main")) - sourceSet.getJava().srcDir(task.getOutputDirectory()); - }); + SourceSetContainer source = project + .getExtensions() + .findByType(SourceSetContainer.class); + + if (source != null) { + source.configureEach(sourceSet -> { + if (sourceSet.getName().equals("main")) + sourceSet.getJava().srcDir(task.getOutputDirectory()); + }); + } }; } }