diff --git a/build.gradle b/build.gradle
index 94d83ed1a5dc654fdaf818eb4bf9e75ecd20cfd3..518372d729c68435c66714a63d05b596f9d67844 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,3 +1,18 @@
+buildscript {
+    repositories {
+        maven {
+            name "gitlab-maven"
+            url "https://git-st.inf.tu-dresden.de/api/v4/groups/jastadd/-/packages/maven"
+        }
+    }
+    dependencies {
+        classpath 'org.jastadd.preprocessor:testing:0.2.13-28'
+    }
+}
+
+import org.jastadd.preprocessor.testing.plugin.PreprocessorPlugin
+import org.jastadd.preprocessor.testing.plugin.RelastTest
+
 //file:noinspection HardCodedStringLiteral
 plugins {
     id 'java'
@@ -5,10 +20,10 @@ plugins {
     id 'application'
     id 'idea'
     id 'maven-publish'
-    id 'org.jastadd.relast.plugin'
     id 'org.jastadd' version '1.14.5'
 }
-import org.jastadd.relast.plugin.RelastTest
+
+apply plugin: PreprocessorPlugin
 
 java.toolchain.languageVersion = JavaLanguageVersion.of(11)
 
@@ -177,18 +192,30 @@ publishing {
 }
 
 task firstRelationsRun(type: RelastTest) {
-    relastFiles 'src/test/jastadd/relations/Relations.relast'
-    grammarName = 'src/test/jastadd/relations/Relations'
-    useJastAddNames = true
-    packageName = 'relations.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd', 'src/test/jastadd/relations/Relations.jrag'
+    relast {
+        inputFiles = [file('src/test/jastadd/relations/Relations.relast')]
+        grammarName = 'src/test/jastadd/relations/Relations'
+        useJastAddNames = true
+        noResolverHelper = true
+    }
+    jastadd {
+        packageName = 'relations.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd'),
+                      file('src/test/jastadd/relations/Relations.jrag')]
+    }
 }
 
 task secondRelationsRun(type: RelastTest, dependsOn: firstRelationsRun) {
-    relastFiles 'src/test/jastadd/relations/Relations.ast'
-    grammarName = 'src/test/jastadd/relations/Relations2'
-    useJastAddNames = true
-    packageName = 'ignored'
+    relast {
+        inputFiles = [file('src/test/jastadd/relations/Relations.ast')]
+        grammarName = 'src/test/jastadd/relations/Relations2'
+        useJastAddNames = true
+        noResolverHelper = true
+    }
+    jastadd {
+        skipRun = true
+        packageName = 'ignored'
+    }
 
     doLast {
         delete fileTree('src/test/java-gen/ignored')
@@ -197,131 +224,200 @@ task secondRelationsRun(type: RelastTest, dependsOn: firstRelationsRun) {
 }
 
 task compileConstructorTest(type: RelastTest) {
-    relastFiles 'src/test/jastadd/constructors/Constructors.relast'
-    grammarName = 'src/test/jastadd/constructors/Constructors'
-    packageName = 'constructors.ast'
-    moreInputFiles 'src/test/jastadd/constructors/Constructors.jrag'
+    relast {
+        inputFiles = [file('src/test/jastadd/constructors/Constructors.relast')]
+        grammarName = 'src/test/jastadd/constructors/Constructors'
+        noResolverHelper = true
+    }
+    jastadd {
+        packageName = 'constructors.ast'
+        inputFiles = [file('src/test/jastadd/constructors/Constructors.jrag')]
+    }
 }
 
 task compileDefaultNamesTest(type: RelastTest) {
-    relastFiles 'src/test/jastadd/relations/Relations.relast'
-    grammarName = 'src/test/jastadd/relations/Relations3'
-    packageName = 'defaultnames.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd', 'src/test/jastadd/relations/Relations.jrag'
+    relast {
+        inputFiles = [file('src/test/jastadd/relations/Relations.relast')]
+        grammarName = 'src/test/jastadd/relations/Relations3'
+        useJastAddNames = false
+        verbose = true
+        noResolverHelper = true
+    }
+    jastadd {
+        packageName = 'defaultnames.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd'),
+                      file('src/test/jastadd/relations/Relations.jrag')]
+    }
 }
 
 task compileDefaultNamesResolverTest(type: RelastTest) {
-    relastFiles 'src/test/jastadd/resolver/Resolver.relast'
-    grammarName = 'src/test/jastadd/resolver/Resolver2'
-    resolverHelper = true
-    packageName = 'defaultnames.resolver.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd',
-            'src/test/jastadd/resolver/ResolverUtils.jadd',
-            'src/test/jastadd/resolver/MyRefResolver.jadd'
+    relast {
+        inputFiles = [file('src/test/jastadd/resolver/Resolver.relast')]
+        grammarName = 'src/test/jastadd/resolver/Resolver2'
+        useJastAddNames = false
+    }
+    jastadd {
+        packageName = 'defaultnames.resolver.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd'),
+                      file('src/test/jastadd/resolver/ResolverUtils.jadd'),
+                      file('src/test/jastadd/resolver/MyRefResolver.jadd')]
+    }
 }
 
 task compileLowerBoundsTest(type: RelastTest) {
-    relastFiles 'src/test/jastadd/lowerbounds/LowerBounds.relast'
-    grammarName = 'src/test/jastadd/lowerbounds/LowerBounds'
-    useJastAddNames = true
-    packageName = 'lowerbounds.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd'
+    relast {
+        inputFiles = [file('src/test/jastadd/lowerbounds/LowerBounds.relast')]
+        grammarName = 'src/test/jastadd/lowerbounds/LowerBounds'
+        useJastAddNames = true
+        noResolverHelper = true
+    }
+    jastadd {
+        packageName = 'lowerbounds.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd')]
+    }
 }
 
 task compileMultipleTest(type: RelastTest) {
-    relastFiles 'src/test/jastadd/multiple/Part1.relast',
-            'src/test/jastadd/multiple/Part2.relast',
-            'src/test/jastadd/multiple/Part3.relast'
-    grammarName = 'src/test/jastadd/multiple/Multiple'
-    useJastAddNames = true
-    packageName = 'multiple.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd'
+    relast {
+        inputFiles = [file('src/test/jastadd/multiple/Part1.relast'),
+                      file('src/test/jastadd/multiple/Part2.relast'),
+                      file('src/test/jastadd/multiple/Part3.relast')]
+        grammarName = 'src/test/jastadd/multiple/Multiple'
+        useJastAddNames = true
+        noResolverHelper = true
+    }
+    jastadd {
+        packageName = 'multiple.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd')]
+    }
 }
 
 task compileMultipleMixedTest(type: RelastTest) {
-    relastFiles 'src/test/jastadd/multiple-mixed/Part1.relast',
-            'src/test/jastadd/multiple-mixed/Part2.relast',
-            'src/test/jastadd/multiple-mixed/Part3.relast'
-    grammarName = 'src/test/jastadd/multiple/Multiple'
-    useJastAddNames = true
-    packageName = 'mixed.multiple.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd'
+    relast {
+        inputFiles = [file('src/test/jastadd/multiple-mixed/Part1.relast'),
+                      file('src/test/jastadd/multiple-mixed/Part2.relast'),
+                      file('src/test/jastadd/multiple-mixed/Part3.relast')]
+        grammarName = 'src/test/jastadd/multiple/Multiple'
+        useJastAddNames = true
+        noResolverHelper = true
+    }
+    jastadd {
+        packageName = 'mixed.multiple.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd')]
+    }
 }
 
 task compileResolverTest(type: RelastTest) {
-    relastFiles 'src/test/jastadd/resolver/Resolver.relast'
-    grammarName = 'src/test/jastadd/resolver/Resolver'
-    useJastAddNames = true
-    resolverHelper = true
-    packageName = 'resolver.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd',
-            'src/test/jastadd/resolver/ResolverUtils.jadd',
-            'src/test/jastadd/resolver/MyRefResolver.jadd'
+    relast {
+        inputFiles = [file('src/test/jastadd/resolver/Resolver.relast')]
+        grammarName = 'src/test/jastadd/resolver/Resolver'
+        useJastAddNames = true
+    }
+    jastadd {
+        packageName = 'resolver.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd'),
+                      file('src/test/jastadd/resolver/ResolverUtils.jadd'),
+                      file('src/test/jastadd/resolver/MyRefResolver.jadd')]
+    }
 }
 
 task compileResolver2Test(type: RelastTest) {
-    relastFiles 'src/test/jastadd/resolver2/Resolver.relast'
-    grammarName = 'src/test/jastadd/resolver2/Resolver'
-    useJastAddNames = true
-    resolverHelper = true
-    packageName = 'resolver2.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd',
-            'src/test/jastadd/resolver2/ResolverUtils.jadd',
-            'src/test/jastadd/resolver2/MyRefResolver.jadd'
+    relast {
+        inputFiles = [file('src/test/jastadd/resolver2/Resolver.relast')]
+        grammarName = 'src/test/jastadd/resolver2/Resolver'
+        useJastAddNames = true
+    }
+    jastadd {
+        packageName = 'resolver2.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd'),
+                      file('src/test/jastadd/resolver2/ResolverUtils.jadd'),
+                      file('src/test/jastadd/resolver2/MyRefResolver.jadd')]
+    }
 }
 
 task compileListNamesTest(type: RelastTest) {
-    relastFiles 'src/test/jastadd/listnames/ListNames.relast'
-    grammarName = 'src/test/jastadd/listnames/ListNames'
-    useJastAddNames = true
-    jastAddList = 'ListyMcListface'
-    listClass = 'java.util.LinkedList'
-    packageName = 'listnames.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd'
+    relast {
+        inputFiles = [file('src/test/jastadd/listnames/ListNames.relast')]
+        grammarName = 'src/test/jastadd/listnames/ListNames'
+        useJastAddNames = true
+        noResolverHelper = true
+        listClass = 'java.util.LinkedList'
+    }
+    jastadd {
+        jastAddList = 'ListyMcListface'
+        packageName = 'listnames.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd')]
+    }
 }
 
 task compileSerializerTest(type: RelastTest) {
-    relastFiles 'src/test/jastadd/serializer/Serializer.relast'
-    grammarName = 'src/test/jastadd/serializer/Serializer'
-    useJastAddNames = true
-    serializer = 'jackson'
-    packageName = 'serializer.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd'
+    relast {
+        inputFiles = [file('src/test/jastadd/serializer/Serializer.relast')]
+        grammarName = 'src/test/jastadd/serializer/Serializer'
+        useJastAddNames = true
+        serializer = 'jackson'
+        noResolverHelper = true
+    }
+    jastadd {
+        packageName = 'serializer.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd')]
+    }
 }
 
 task compileSerializerDefaultNamesTest(type: RelastTest) {
-    relastFiles 'src/test/jastadd/serializer-names/Serializer.relast'
-    grammarName = 'src/test/jastadd/serializer-names/Serializer'
-    serializer = 'jackson'
-    packageName = 'defaultnames.serializer.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd'
+    relast {
+        inputFiles = [file('src/test/jastadd/serializer-names/Serializer.relast')]
+        grammarName = 'src/test/jastadd/serializer-names/Serializer'
+        serializer = 'jackson'
+        useJastAddNames = false
+        verbose = true
+        noResolverHelper = true
+    }
+    jastadd {
+        packageName = 'defaultnames.serializer.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd')]
+    }
 }
 
 task compileSerializerPointerTest(type: RelastTest) {
-    resolverHelper = true
-    relastFiles 'src/test/jastadd/serializer-pointer/Serializer.relast'
-    grammarName = 'src/test/jastadd/serializer-pointer/Serializer'
-    serializer = 'jackson-json-pointer'
-    packageName = 'pointer.serializer.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd'
+    relast {
+        inputFiles = [file('src/test/jastadd/serializer-pointer/Serializer.relast')]
+        grammarName = 'src/test/jastadd/serializer-pointer/Serializer'
+        serializer = 'jackson-json-pointer'
+        useJastAddNames = false
+    }
+    jastadd {
+        packageName = 'pointer.serializer.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd')]
+    }
 }
 
 task compileSerializerManualTest(type: RelastTest) {
-    resolverHelper = true
-    relastFiles 'src/test/jastadd/serializer-manual/Serializer.relast'
-    grammarName = 'src/test/jastadd/serializer-manual/Serializer'
-    serializer = 'jackson-manual-references'
-    packageName = 'manual.serializer.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd', 'src/test/jastadd/serializer-manual/JsonPointer.jrag'
+    relast {
+        inputFiles = [file('src/test/jastadd/serializer-manual/Serializer.relast')]
+        grammarName = 'src/test/jastadd/serializer-manual/Serializer'
+        serializer = 'jackson-manual-references'
+        useJastAddNames = false
+    }
+    jastadd {
+        packageName = 'manual.serializer.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd'),
+                      file('src/test/jastadd/serializer-manual/JsonPointer.jrag')]
+    }
 }
 
 task compileSerializerManualRelativeTest(type: RelastTest) {
-    resolverHelper = true
-    relastFiles 'src/test/jastadd/serializer-manual-relative/Serializer.relast'
-    grammarName = 'src/test/jastadd/serializer-manual-relative/Serializer'
-    serializer = 'jackson-manual-references'
-    packageName = 'manual.relative.serializer.ast'
-    moreInputFiles 'src/test/jastadd/Utils.jadd', 'src/test/jastadd/serializer-manual-relative/JsonPointer.jrag'
+    relast {
+        inputFiles = [file('src/test/jastadd/serializer-manual-relative/Serializer.relast')]
+        grammarName = 'src/test/jastadd/serializer-manual-relative/Serializer'
+        serializer = 'jackson-manual-references'
+        useJastAddNames = false
+    }
+    jastadd {
+        packageName = 'manual.relative.serializer.ast'
+        inputFiles = [file('src/test/jastadd/Utils.jadd'),
+                      file('src/test/jastadd/serializer-manual-relative/JsonPointer.jrag')]
+    }
 }
 
 task cleanTestGen(type: Delete) {
diff --git a/buildSrc/src/main/java/org/jastadd/relast/plugin/RelastPlugin.java b/buildSrc/src/main/java/org/jastadd/relast/plugin/RelastPlugin.java
deleted file mode 100644
index 392c2e03c57c3d5235770b4dadc402504ef9cb5f..0000000000000000000000000000000000000000
--- a/buildSrc/src/main/java/org/jastadd/relast/plugin/RelastPlugin.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package org.jastadd.relast.plugin;
-
-import org.gradle.api.Plugin;
-import org.gradle.api.Project;
-import org.gradle.api.Task;
-import org.gradle.api.tasks.TaskCollection;
-
-import java.util.Set;
-
-/**
- * Plugin for RelAst-Test.
- *
- * @author rschoene - Initial contribution
- */
-public class RelastPlugin implements Plugin<Project> {
-
-  private Task testTask;
-
-  @Override
-  public void apply(Project project) {
-    Set<Task> tasks = project.getTasksByName("test", false);
-    // there should be only one task "test"
-    testTask = tasks.iterator().next();
-    TaskCollection<RelastTest> relastTests = project.getTasks().withType(RelastTest.class);
-    relastTests.forEach(this::setupRelastTest);
-    relastTests.whenTaskAdded(this::setupRelastTest);
-  }
-
-  private void setupRelastTest(RelastTest relastTest) {
-    testTask.dependsOn(relastTest);
-    relastTest.setGroup("verification");
-  }
-}
diff --git a/buildSrc/src/main/java/org/jastadd/relast/plugin/RelastTest.java b/buildSrc/src/main/java/org/jastadd/relast/plugin/RelastTest.java
deleted file mode 100644
index 5098a85916ee63c0af3c5c0045a221cb0f83939c..0000000000000000000000000000000000000000
--- a/buildSrc/src/main/java/org/jastadd/relast/plugin/RelastTest.java
+++ /dev/null
@@ -1,252 +0,0 @@
-package org.jastadd.relast.plugin;
-
-import org.gradle.api.DefaultTask;
-import org.gradle.api.Project;
-import org.gradle.api.file.FileCollection;
-import org.gradle.api.plugins.JavaPlugin;
-import org.gradle.api.tasks.SourceSet;
-import org.gradle.api.tasks.SourceSetContainer;
-import org.gradle.api.tasks.TaskAction;
-
-import java.nio.file.Paths;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-/**
- * RelAst Test Task
- *
- * @author rschoene - Initial contribution
- */
-@SuppressWarnings({"unused", "WeakerAccess"})
-public class RelastTest extends DefaultTask {
-  // general options
-  private boolean verbose = false;
-  // pre-process options
-  private List<String> relastFiles = new ArrayList<>();
-  private boolean useJastAddNames;
-  private boolean resolverHelper;
-  private boolean writeToFile = true;
-  private String grammarName;
-  private String listClass;
-  private String jastAddList;
-  private String serializer;
-
-  // compile options
-  private boolean runJastAdd = true;
-  private String outputDir = "src/test/java-gen/";
-  private String packageName;
-  private List<String> moreInputFiles = new ArrayList<>();
-
-  public boolean isVerbose() {
-    return verbose;
-  }
-
-  public void setVerbose(boolean verbose) {
-    this.verbose = verbose;
-  }
-
-  // pre-process options
-  public List<String> getRelastFiles() {
-    return relastFiles;
-  }
-
-  public void relastFiles(String relastFile) {
-    this.relastFiles.add(relastFile);
-  }
-
-  public void relastFiles(String[] relastFilesArray) {
-    this.relastFiles = Arrays.asList(relastFilesArray);
-  }
-
-  public boolean isUseJastAddNames() {
-    return useJastAddNames;
-  }
-
-  public void setUseJastAddNames(boolean useJastAddNames) {
-    this.useJastAddNames = useJastAddNames;
-  }
-
-  public boolean isResolverHelper() {
-    return resolverHelper;
-  }
-
-  public void setResolverHelper(boolean resolverHelper) {
-    this.resolverHelper = resolverHelper;
-  }
-
-  public boolean isWriteToFile() {
-    return writeToFile;
-  }
-
-  public void setWriteToFile(boolean writeToFile) {
-    this.writeToFile = writeToFile;
-  }
-
-  public String getGrammarName() {
-    return grammarName;
-  }
-
-  public void setGrammarName(String grammarName) {
-    this.grammarName = grammarName;
-  }
-
-  public String getListClass() {
-    return listClass;
-  }
-
-  public void setListClass(String listClass) {
-    this.listClass = listClass;
-  }
-
-  public String getJastAddList() {
-    return jastAddList;
-  }
-
-  public void setJastAddList(String jastAddList) {
-    this.jastAddList = jastAddList;
-  }
-
-  public String getSerializer() {
-    return serializer;
-  }
-
-  public void setSerializer(String serializer) {
-    this.serializer = serializer;
-  }
-
-  // compile options
-  public boolean isRunJastAdd() {
-    return runJastAdd;
-  }
-
-  public void setRunJastAdd(boolean runJastAdd) {
-    this.runJastAdd = runJastAdd;
-  }
-
-  public String getOutputDir() {
-    return outputDir;
-  }
-
-  public void setOutputDir(String outputDir) {
-    this.outputDir = outputDir;
-  }
-
-  public String getPackageName() {
-    return packageName;
-  }
-
-  public void setPackageName(String packageName) {
-    this.packageName = packageName;
-  }
-
-  public List<String> getMoreInputFiles() {
-    return moreInputFiles;
-  }
-
-  public void moreInputFiles(String f) {
-    this.moreInputFiles.add(f);
-  }
-
-  public void moreInputFiles(String[] fileArray) {
-    this.moreInputFiles.addAll(Arrays.asList(fileArray));
-  }
-
-  private boolean isSet(String option) {
-    return option != null && !option.isEmpty();
-  }
-
-  private String[] genSuffixes = {".ast", ".jadd", "RefResolver.jadd", "ResolverStubs.jrag", "Serializer.jadd"};
-
-  @TaskAction
-  void runTest() {
-    setGroup("verification");
-    setDescription("Runs a relast test");
-    Project project = getProject();
-    if (isVerbose()) {
-      System.out.println("Running relast test");
-      System.out.println("relast files: " + getRelastFiles());
-      System.out.println("Deleting files");
-    }
-    // first, delete generated files
-    List<String> genFiles = new ArrayList<>();
-    for (String suffix : genSuffixes) {
-      genFiles.add(getGrammarName() + suffix);
-    }
-    if (isVerbose()) {
-      System.out.println("gen files: " + genFiles);
-    }
-    project.delete(deleteSpec -> {
-      deleteSpec.delete(genFiles);
-      if (isSet(getPackageName())) {
-        deleteSpec.delete(Paths.get(getOutputDir(), getPackageName()));
-      }
-    });
-    if (isVerbose()) {
-      System.out.println("Pre processing, running relast");
-    }
-    // then, run relast pre processing
-    project.getPlugins().withType(JavaPlugin.class, javaPlugin -> {
-      SourceSetContainer sourceSets = (SourceSetContainer) project.getProperties().get("sourceSets");
-      FileCollection runtimeClasspath = sourceSets.getByName(SourceSet.MAIN_SOURCE_SET_NAME).getRuntimeClasspath();
-      project.javaexec(javaExecSpec -> {
-        javaExecSpec.setClasspath(runtimeClasspath);
-        javaExecSpec.setMain("org.jastadd.relast.compiler.Compiler");
-        List<Object> args = new ArrayList<>(getRelastFiles());
-        args.add("--quiet");
-        if (isWriteToFile()) {
-          args.add("--file");
-        }
-        if (isUseJastAddNames()) {
-          args.add("--useJastAddNames");
-        }
-        if (isResolverHelper()) {
-          args.add("--resolverHelper");
-        }
-        if (isSet(getJastAddList())) {
-          args.add("--jastAddList=" + getJastAddList());
-        }
-        if (isSet(getListClass())) {
-          args.add("--listClass=" + getListClass());
-        }
-        if (isSet(getSerializer())) {
-          args.add("--serializer=" + getSerializer());
-        }
-        args.add("--grammarName=" + getGrammarName());
-        if (isVerbose()) {
-          System.out.println("Start relast with args: " + args);
-        }
-        javaExecSpec.args(args);
-      });
-    });
-    if (isRunJastAdd()) {
-      if (isVerbose()) {
-        System.out.println("Compile with JastAdd");
-      }
-      // check which files were actually generated
-      genFiles.removeIf(s -> !Paths.get(s).toFile().exists());
-      // finally, compile generated files
-      project.getPlugins().withType(JavaPlugin.class, javaPlugin -> {
-        SourceSetContainer sourceSets = (SourceSetContainer) project.getProperties().get("sourceSets");
-        FileCollection runtimeClasspath = sourceSets.getByName(SourceSet.MAIN_SOURCE_SET_NAME).getRuntimeClasspath();
-        project.javaexec(javaExecSpec -> {
-          javaExecSpec.setClasspath(runtimeClasspath);
-          javaExecSpec.setMain("org.jastadd.JastAdd");
-          List<Object> args = new ArrayList<>();
-          args.add("--o=" + getOutputDir());
-          args.add("--package=" + getPackageName());
-          if (isSet(getJastAddList())) {
-            args.add("--List=" + getJastAddList());
-          }
-          args.addAll(genFiles);
-          args.addAll(getMoreInputFiles());
-          if (isVerbose()) {
-            System.out.println("Start JastAdd with args: " + args);
-          }
-          javaExecSpec.args(args);
-        });
-      });
-    }
-  }
-
-}
diff --git a/buildSrc/src/main/resources/META-INF/gradle-plugins/org.jastadd.relast.plugin.properties b/buildSrc/src/main/resources/META-INF/gradle-plugins/org.jastadd.relast.plugin.properties
deleted file mode 100644
index 20222b8953522469ec2c0340ea3aeb5ed6294d13..0000000000000000000000000000000000000000
--- a/buildSrc/src/main/resources/META-INF/gradle-plugins/org.jastadd.relast.plugin.properties
+++ /dev/null
@@ -1 +0,0 @@
-implementation-class=org.jastadd.relast.plugin.RelastPlugin