diff --git a/trainbenchmark/settings.gradle b/trainbenchmark/settings.gradle
index 3a503fa98a548f9dbadccd5ee41ccc78d75d91ba..6f80f4b52313487aff0f4cb6c457c5a16a31131a 100644
--- a/trainbenchmark/settings.gradle
+++ b/trainbenchmark/settings.gradle
@@ -9,20 +9,20 @@ include ':trainbenchmark-generator-json4ag-special'
 include ':trainbenchmark-generator-relast'
 include ':trainbenchmark-generator-dot'
 include ':trainbenchmark-reporting'
-include ':trainbenchmark-scripts'
+//include ':trainbenchmark-scripts'
 include ':trainbenchmark-server'
 include ':trainbenchmark-tool'
 include ':trainbenchmark-tool-emf'
-include ':trainbenchmark-tool-jastadd-base'
+//include ':trainbenchmark-tool-jastadd-base'
 include ':trainbenchmark-tool-jastadd-namelookup'
-include ':trainbenchmark-tool-jastadd-namelookup-base'
+//include ':trainbenchmark-tool-jastadd-namelookup-base'
 include ':trainbenchmark-tool-jastadd-namelookup-incremental'
 include ':trainbenchmark-tool-jastadd-optimized'
-include ':trainbenchmark-tool-jastadd-optimized-base'
+//include ':trainbenchmark-tool-jastadd-optimized-base'
 include ':trainbenchmark-tool-jastadd-optimized-incremental'
 include ':trainbenchmark-tool-jastadd-specialized'
 include ':trainbenchmark-tool-jastadd-relast'
-include ':trainbenchmark-tool-jastadd-specialized-base'
+//include ':trainbenchmark-tool-jastadd-specialized-base'
 include ':trainbenchmark-tool-jastadd-specialized-incremental'
 include ':trainbenchmark-tool-jastadd-relast-incremental'
 include ':trainbenchmark-tool-tinkergraph'
diff --git a/trainbenchmark/trainbenchmark-alternate-scripts/build.gradle b/trainbenchmark/trainbenchmark-alternate-scripts/build.gradle
index d27df7323d9852746b624b71236c8c81a7ba81b6..d8d87dc6573a3db33c03754e5773377314f58fe2 100644
--- a/trainbenchmark/trainbenchmark-alternate-scripts/build.gradle
+++ b/trainbenchmark/trainbenchmark-alternate-scripts/build.gradle
@@ -10,15 +10,11 @@ dependencies {
 	compile project(':trainbenchmark-generator-relast')
 	compile project(':trainbenchmark-generator-dot')
 	compile project(':trainbenchmark-tool')
-	compile project(':trainbenchmark-tool-jastadd-base')
 	compile project(':trainbenchmark-tool-jastadd-namelookup')
-	compile project(':trainbenchmark-tool-jastadd-namelookup-base')
 	compile project(':trainbenchmark-tool-jastadd-namelookup-incremental')
 	compile project(':trainbenchmark-tool-jastadd-optimized')
-	compile project(':trainbenchmark-tool-jastadd-optimized-base')
 	compile project(':trainbenchmark-tool-jastadd-optimized-incremental')
 	compile project(':trainbenchmark-tool-jastadd-specialized')
-	compile project(':trainbenchmark-tool-jastadd-specialized-base')
 	compile project(':trainbenchmark-tool-jastadd-specialized-incremental')
 	compile project(':trainbenchmark-tool-jastadd-relast')
 	compile project(':trainbenchmark-tool-jastadd-relast-incremental')
diff --git a/trainbenchmark/trainbenchmark-scripts/build.gradle b/trainbenchmark/trainbenchmark-scripts/build.gradle
index 6b07fe0557d7af3049e059c9e6a4613749cb92da..ab58cd97aaa02e2dfc1a4e58ef0c24b7437bf705 100644
--- a/trainbenchmark/trainbenchmark-scripts/build.gradle
+++ b/trainbenchmark/trainbenchmark-scripts/build.gradle
@@ -10,15 +10,11 @@ dependencies {
 	compile project(':trainbenchmark-generator-relast')
 	compile project(':trainbenchmark-generator-dot')
 	compile project(':trainbenchmark-tool')
-	compile project(':trainbenchmark-tool-jastadd-base')
 	compile project(':trainbenchmark-tool-jastadd-namelookup')
-	compile project(':trainbenchmark-tool-jastadd-namelookup-base')
 	compile project(':trainbenchmark-tool-jastadd-namelookup-incremental')
 	compile project(':trainbenchmark-tool-jastadd-optimized')
-	compile project(':trainbenchmark-tool-jastadd-optimized-base')
 	compile project(':trainbenchmark-tool-jastadd-optimized-incremental')
 	compile project(':trainbenchmark-tool-jastadd-specialized')
-	compile project(':trainbenchmark-tool-jastadd-specialized-base')
 	compile project(':trainbenchmark-tool-jastadd-specialized-incremental')
 	compile project(':trainbenchmark-tool-jastadd-relast')
 	compile project(':trainbenchmark-tool-jastadd-relast-incremental')
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-base/src/main/java-gen/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-base/src/main/java-gen/.gitignore
deleted file mode 100644
index d6b7ef32c8478a48c3994dcadc86837f4371184d..0000000000000000000000000000000000000000
--- a/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-base/src/main/java-gen/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!.gitignore
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-incremental/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-incremental/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..6aba85ddc8403ededd3e82742948b055ef06a447
--- /dev/null
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-incremental/.gitignore
@@ -0,0 +1,3 @@
+src/main/jastadd-gen
+src/main/java-gen
+src/main/java-include
\ No newline at end of file
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-incremental/build.gradle b/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-incremental/build.gradle
index 3102fc55e6ee8e4acfe791fdb5189fe3b2a43ad5..c91ada167d8068ff6ea3f519da4c1fdd7c542ebf 100644
--- a/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-incremental/build.gradle
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-incremental/build.gradle
@@ -1,5 +1,21 @@
 plugins { id "com.github.johnrengelman.shadow" version "1.2.3" }
 
+apply plugin: 'idea'
+
+idea {
+    module {
+        generatedSourceDirs += file('src/main/java-include')
+    }
+}
+
+task copyFromBase(type: Copy) {
+    group = 'build'
+    description = 'Copy Java sources from base project'
+    from '../trainbenchmark-tool-jastadd-base/src/main/java'
+    from '../trainbenchmark-tool-jastadd-namelookup-base/src/main/java'
+    into 'src/main/java-include'
+}
+
 shadowJar {
     classifier = 'fat'
     manifest { attributes 'Main-Class': 'de.tudresden.inf.st.train.jastadd.JastaddBenchmarkMain' }
@@ -20,6 +36,7 @@ task jastadd(type: JavaExec) {
     ] + fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-namelookup-base/src/main/jastadd/")
     doFirst {
         delete fileTree('src/main/java-gen')
+        mkdir 'src/main/java-gen'
     }
 
     inputs.files fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-namelookup-base/src/main/jastadd/")
@@ -31,21 +48,25 @@ sourceSets {
         java {
             srcDir 'src/main/java'
             srcDir 'src/main/java-gen'
-            srcDir '../trainbenchmark-tool-jastadd-base/src/main/java'
-            srcDir '../trainbenchmark-tool-jastadd-namelookup-base/src/main/java'
+            srcDir 'src/main/java-include'
         }
     }
 }
 
 clean {
-    delete fileTree('src/main/java-gen')
+    delete 'src/main/java-gen'
+    delete 'src/main/jastadd-gen'
+    delete 'src/main/java-include'
 }
 
 dependencies {
     compile project(':trainbenchmark-tool')
-    compile project(':trainbenchmark-tool-jastadd-base')
-    compile project(':trainbenchmark-tool-jastadd-namelookup-base')
     compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.8.8.1'
 }
 
+test {
+    outputs.upToDateWhen { false }
+}
+
 compileJava.dependsOn jastadd
+compileJava.dependsOn copyFromBase
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-incremental/src/main/java-gen/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-incremental/src/main/java-gen/.gitignore
deleted file mode 100644
index d6b7ef32c8478a48c3994dcadc86837f4371184d..0000000000000000000000000000000000000000
--- a/trainbenchmark/trainbenchmark-tool-jastadd-namelookup-incremental/src/main/java-gen/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!.gitignore
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-namelookup/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-namelookup/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..6aba85ddc8403ededd3e82742948b055ef06a447
--- /dev/null
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-namelookup/.gitignore
@@ -0,0 +1,3 @@
+src/main/jastadd-gen
+src/main/java-gen
+src/main/java-include
\ No newline at end of file
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-namelookup/build.gradle b/trainbenchmark/trainbenchmark-tool-jastadd-namelookup/build.gradle
index ddacb31dbf390cfe7e2738d0dd07c24f97c4d348..6f827ccb559b02272a66e3fb777e2a24b0751190 100644
--- a/trainbenchmark/trainbenchmark-tool-jastadd-namelookup/build.gradle
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-namelookup/build.gradle
@@ -1,5 +1,21 @@
 plugins { id "com.github.johnrengelman.shadow" version "1.2.3" }
 
+apply plugin: 'idea'
+
+idea {
+    module {
+        generatedSourceDirs += file('src/main/java-include')
+    }
+}
+
+task copyFromBase(type: Copy) {
+    group = 'build'
+    description = 'Copy Java sources from base project'
+    from '../trainbenchmark-tool-jastadd-base/src/main/java'
+    from '../trainbenchmark-tool-jastadd-namelookup-base/src/main/java'
+    into 'src/main/java-include'
+}
+
 shadowJar {
     classifier = 'fat'
     manifest { attributes 'Main-Class': 'de.tudresden.inf.st.train.jastadd.JastaddBenchmarkMain' }
@@ -26,6 +42,7 @@ task jastadd(type: JavaExec) {
                 "--tracing=api",
         ] + fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-namelookup-base/src/main/jastadd/"))
         delete fileTree('src/main/java-gen')
+        mkdir 'src/main/java-gen'
     }
 
     inputs.files fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-namelookup-base/src/main/jastadd/")
@@ -37,21 +54,25 @@ sourceSets {
         java {
             srcDir 'src/main/java'
             srcDir 'src/main/java-gen'
-            srcDir '../trainbenchmark-tool-jastadd-base/src/main/java'
-            srcDir '../trainbenchmark-tool-jastadd-namelookup-base/src/main/java'
+            srcDir 'src/main/java-include'
         }
     }
 }
 
 clean {
-    delete fileTree('src/main/java-gen')
+    delete 'src/main/java-gen'
+    delete 'src/main/jastadd-gen'
+    delete 'src/main/java-include'
 }
 
 dependencies {
     compile project(':trainbenchmark-tool')
-    compile project(':trainbenchmark-tool-jastadd-base')
-    compile project(':trainbenchmark-tool-jastadd-namelookup-base')
     compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.8.8.1'
 }
 
+test {
+    outputs.upToDateWhen { false }
+}
+
 compileJava.dependsOn jastadd
+compileJava.dependsOn copyFromBase
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-namelookup/src/main/java-gen/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-namelookup/src/main/java-gen/.gitignore
deleted file mode 100644
index d6b7ef32c8478a48c3994dcadc86837f4371184d..0000000000000000000000000000000000000000
--- a/trainbenchmark/trainbenchmark-tool-jastadd-namelookup/src/main/java-gen/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!.gitignore
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-optimized-base/src/main/java-gen/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-optimized-base/src/main/java-gen/.gitignore
deleted file mode 100644
index d6b7ef32c8478a48c3994dcadc86837f4371184d..0000000000000000000000000000000000000000
--- a/trainbenchmark/trainbenchmark-tool-jastadd-optimized-base/src/main/java-gen/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!.gitignore
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-optimized-incremental/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-optimized-incremental/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..6aba85ddc8403ededd3e82742948b055ef06a447
--- /dev/null
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-optimized-incremental/.gitignore
@@ -0,0 +1,3 @@
+src/main/jastadd-gen
+src/main/java-gen
+src/main/java-include
\ No newline at end of file
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-optimized-incremental/build.gradle b/trainbenchmark/trainbenchmark-tool-jastadd-optimized-incremental/build.gradle
index 1c12e971cea1a147b0eb55e30eea45196d0579d3..6aadf620cc2d074c283b4ffad4e08cf24ba76c2d 100644
--- a/trainbenchmark/trainbenchmark-tool-jastadd-optimized-incremental/build.gradle
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-optimized-incremental/build.gradle
@@ -1,5 +1,21 @@
 plugins { id "com.github.johnrengelman.shadow" version "1.2.3" }
 
+apply plugin: 'idea'
+
+idea {
+    module {
+        generatedSourceDirs += file('src/main/java-include')
+    }
+}
+
+task copyFromBase(type: Copy) {
+    group = 'build'
+    description = 'Copy Java sources from base project'
+    from '../trainbenchmark-tool-jastadd-base/src/main/java'
+    from '../trainbenchmark-tool-jastadd-optimized-base/src/main/java'
+    into 'src/main/java-include'
+}
+
 shadowJar {
     classifier = 'fat'
     manifest { attributes 'Main-Class': 'de.tudresden.inf.st.train.jastadd.JastaddBenchmarkMain' }
@@ -13,13 +29,14 @@ task jastadd(type: JavaExec) {
             "--cache=all",
             "--flush=full",
             "--incremental=param",
-            "--package=de.tudresden.inf.st.train.jastadd.ast",
             "--rewrite=cnta",
+            "--package=de.tudresden.inf.st.train.jastadd.ast",
             "--o=src/main/java-gen",
             "--tracing=api",
     ] + fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-optimized-base/src/main/jastadd/")
     doFirst {
         delete fileTree('src/main/java-gen')
+        mkdir 'src/main/java-gen'
     }
 
     inputs.files fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-optimized-base/src/main/jastadd/")
@@ -31,21 +48,25 @@ sourceSets {
         java {
             srcDir 'src/main/java'
             srcDir 'src/main/java-gen'
-            srcDir '../trainbenchmark-tool-jastadd-base/src/main/java'
-            srcDir '../trainbenchmark-tool-jastadd-optimized-base/src/main/java'
+            srcDir 'src/main/java-include'
         }
     }
 }
 
 clean {
-    delete fileTree('src/main/java-gen')
+    delete 'src/main/java-gen'
+    delete 'src/main/jastadd-gen'
+    delete 'src/main/java-include'
 }
 
 dependencies {
     compile project(':trainbenchmark-tool')
-    compile project(':trainbenchmark-tool-jastadd-base')
-    compile project(':trainbenchmark-tool-jastadd-optimized-base')
     compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.8.8.1'
 }
 
+test {
+    outputs.upToDateWhen { false }
+}
+
 compileJava.dependsOn jastadd
+compileJava.dependsOn copyFromBase
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-optimized-incremental/src/main/java-gen/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-optimized-incremental/src/main/java-gen/.gitignore
deleted file mode 100644
index d6b7ef32c8478a48c3994dcadc86837f4371184d..0000000000000000000000000000000000000000
--- a/trainbenchmark/trainbenchmark-tool-jastadd-optimized-incremental/src/main/java-gen/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!.gitignore
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-optimized/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-optimized/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..6aba85ddc8403ededd3e82742948b055ef06a447
--- /dev/null
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-optimized/.gitignore
@@ -0,0 +1,3 @@
+src/main/jastadd-gen
+src/main/java-gen
+src/main/java-include
\ No newline at end of file
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-optimized/build.gradle b/trainbenchmark/trainbenchmark-tool-jastadd-optimized/build.gradle
index 29c3f1eb7d35a32bbe356911da1a101e20b47b17..f06dce97f406e5400edd07eca47c64aa5b3369ba 100644
--- a/trainbenchmark/trainbenchmark-tool-jastadd-optimized/build.gradle
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-optimized/build.gradle
@@ -1,5 +1,21 @@
 plugins { id "com.github.johnrengelman.shadow" version "1.2.3" }
 
+apply plugin: 'idea'
+
+idea {
+    module {
+        generatedSourceDirs += file('src/main/java-include')
+    }
+}
+
+task copyFromBase(type: Copy) {
+    group = 'build'
+    description = 'Copy Java sources from base project'
+    from '../trainbenchmark-tool-jastadd-base/src/main/java'
+    from '../trainbenchmark-tool-jastadd-optimized-base/src/main/java'
+    into 'src/main/java-include'
+}
+
 shadowJar {
     classifier = 'fat'
     manifest { attributes 'Main-Class': 'de.tudresden.inf.st.train.jastadd.JastaddBenchmarkMain' }
@@ -18,6 +34,7 @@ task jastadd(type: JavaExec) {
     ] + fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-optimized-base/src/main/jastadd/")
     doFirst {
         delete fileTree('src/main/java-gen')
+        mkdir 'src/main/java-gen'
     }
 
     inputs.files fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-optimized-base/src/main/jastadd/")
@@ -29,21 +46,25 @@ sourceSets {
         java {
             srcDir 'src/main/java'
             srcDir 'src/main/java-gen'
-            srcDir '../trainbenchmark-tool-jastadd-base/src/main/java'
-            srcDir '../trainbenchmark-tool-jastadd-optimized-base/src/main/java'
+            srcDir 'src/main/java-include'
         }
     }
 }
 
 clean {
-    delete fileTree('src/main/java-gen')
+    delete 'src/main/java-gen'
+    delete 'src/main/jastadd-gen'
+    delete 'src/main/java-include'
 }
 
 dependencies {
     compile project(':trainbenchmark-tool')
-    compile project(':trainbenchmark-tool-jastadd-base')
-    compile project(':trainbenchmark-tool-jastadd-optimized-base')
     compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.8.8.1'
 }
 
+test {
+    outputs.upToDateWhen { false }
+}
+
 compileJava.dependsOn jastadd
+compileJava.dependsOn copyFromBase
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-optimized/src/main/java-gen/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-optimized/src/main/java-gen/.gitignore
deleted file mode 100644
index d6b7ef32c8478a48c3994dcadc86837f4371184d..0000000000000000000000000000000000000000
--- a/trainbenchmark/trainbenchmark-tool-jastadd-optimized/src/main/java-gen/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!.gitignore
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-relast-incremental/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-relast-incremental/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..6aba85ddc8403ededd3e82742948b055ef06a447
--- /dev/null
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-relast-incremental/.gitignore
@@ -0,0 +1,3 @@
+src/main/jastadd-gen
+src/main/java-gen
+src/main/java-include
\ No newline at end of file
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-relast-incremental/build.gradle b/trainbenchmark/trainbenchmark-tool-jastadd-relast-incremental/build.gradle
index 6f12751f4343e084ac2100d1a99ac2f3083d9334..dc24bb0ed8808fdb84b7186d2ff3415245b512f9 100644
--- a/trainbenchmark/trainbenchmark-tool-jastadd-relast-incremental/build.gradle
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-relast-incremental/build.gradle
@@ -1,5 +1,22 @@
 plugins { id "com.github.johnrengelman.shadow" version "1.2.3" }
 
+apply plugin: 'idea'
+
+idea {
+    module {
+        generatedSourceDirs += file('src/main/java-include')
+        generatedSourceDirs += file('src/main/java-gen')
+    }
+}
+
+task copyFromBase(type: Copy) {
+    group = 'build'
+    description = 'Copy Java sources from base project'
+    from '../trainbenchmark-tool-jastadd-base/src/main/java'
+    from '../trainbenchmark-tool-jastadd-specialized-base/src/main/java'
+    into 'src/main/java-include'
+}
+
 shadowJar {
     classifier = 'fat'
     manifest { attributes 'Main-Class': 'de.tudresden.inf.st.train.jastadd.JastaddBenchmarkMain' }
@@ -7,7 +24,8 @@ shadowJar {
 
 task preprocess(type: JavaExec) {
     doFirst {
-        delete fileTree('src/main/jastadd-gen')
+        delete 'src/main/jastadd-gen'
+        mkdir 'src/main/jastadd-gen'
     }
     group = 'Build'
     main = "-jar"
@@ -19,9 +37,22 @@ task preprocess(type: JavaExec) {
             "--grammarName=src/main/jastadd-gen/Train",
             "--file"
     ]
+
+    inputs.files "../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/Train.relast"
+    outputs.files "src/main/jastadd-gen/Train.ast",
+            "src/main/jastadd-gen/Train.jadd",
+            "src/main/jastadd-gen/TrainRefResolver.jadd",
+            "src/main/jastadd-gen/TrainResolverStubs.jrag",
+            "src/main/jastadd-gen/TrainSerializer.jadd"
+
 }
 
 task jastadd(type: JavaExec) {
+    doFirst {
+        delete 'src/main/java-gen'
+        mkdir 'src/main/java-gen'
+    }
+
     group = 'Build'
     main = "-jar"
     args = [
@@ -33,18 +64,27 @@ task jastadd(type: JavaExec) {
             "--package=de.tudresden.inf.st.train.jastadd.ast",
             "--o=src/main/java-gen",
             "--tracing=api",
-    ] + fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("src/main/jastadd-gen/") + fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/").matching {exclude "*.relast"}
-    doFirst {
-        delete fileTree('src/main/java-gen')
-    }
+            "src/main/jastadd-gen/Train.ast",
+            "src/main/jastadd-gen/Train.jadd",
+            "src/main/jastadd-gen/TrainRefResolver.jadd",
+            "src/main/jastadd-gen/TrainResolverStubs.jrag",
+            "src/main/jastadd-gen/TrainSerializer.jadd"
+    ] + fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/").matching {exclude "*.relast"}
+
     doLast {
         ant.replaceregexp(match:'RefList extends List', replace:'RefList<T extends ASTNode> extends List<T>', flags:'g', byline:true) {
             fileset(dir: 'src/main/java-gen/de/tudresden/inf/st/train/jastadd/ast', includes: 'RefList.java')
         }
     }
 
-    inputs.files fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/") + fileTree("src/main/jastadd-gen/")
-    outputs.files file("src/main/java-gen")
+    inputs.files "src/main/jastadd-gen/Train.ast",
+            "src/main/jastadd-gen/Train.jadd",
+            "src/main/jastadd-gen/TrainRefResolver.jadd",
+            "src/main/jastadd-gen/TrainResolverStubs.jrag",
+            "src/main/jastadd-gen/TrainSerializer.jadd",
+            fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/"),
+            fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/")
+    outputs.files "src/main/java-gen"
 }
 
 sourceSets {
@@ -52,20 +92,19 @@ sourceSets {
         java {
             srcDir 'src/main/java'
             srcDir 'src/main/java-gen'
-            srcDir '../trainbenchmark-tool-jastadd-base/src/main/java'
-            srcDir '../trainbenchmark-tool-jastadd-specialized-base/src/main/java'
+            srcDir 'src/main/java-include'
         }
     }
 }
 
-clean {
-    delete fileTree('src/main/java-gen')
+task cleanGen(type:Delete) {
+    delete "src/main/java-gen"
+    delete "src/main/jastadd-gen"
+    delete "src/main/java-include"
 }
 
 dependencies {
     compile project(':trainbenchmark-tool')
-    compile project(':trainbenchmark-tool-jastadd-base')
-    compile project(':trainbenchmark-tool-jastadd-specialized-base')
     compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.8.8.1'
 }
 
@@ -73,5 +112,7 @@ test {
     outputs.upToDateWhen { false }
 }
 
+clean.dependsOn cleanGen
 jastadd.dependsOn preprocess
-compileJava.dependsOn jastadd
\ No newline at end of file
+compileJava.dependsOn jastadd
+compileJava.dependsOn copyFromBase
\ No newline at end of file
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-relast-incremental/src/main/java-gen/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-relast-incremental/src/main/java-gen/.gitignore
deleted file mode 100644
index d6b7ef32c8478a48c3994dcadc86837f4371184d..0000000000000000000000000000000000000000
--- a/trainbenchmark/trainbenchmark-tool-jastadd-relast-incremental/src/main/java-gen/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!.gitignore
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-relast/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-relast/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..6aba85ddc8403ededd3e82742948b055ef06a447
--- /dev/null
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-relast/.gitignore
@@ -0,0 +1,3 @@
+src/main/jastadd-gen
+src/main/java-gen
+src/main/java-include
\ No newline at end of file
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-relast/build.gradle b/trainbenchmark/trainbenchmark-tool-jastadd-relast/build.gradle
index 3f9a633c4459697f0b2a1d5eee4133e4267d3603..b03d29c1b4a63dc24ac0b9605082441953c7b234 100644
--- a/trainbenchmark/trainbenchmark-tool-jastadd-relast/build.gradle
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-relast/build.gradle
@@ -1,5 +1,22 @@
 plugins { id "com.github.johnrengelman.shadow" version "1.2.3" }
 
+apply plugin: 'idea'
+
+idea {
+    module {
+        generatedSourceDirs += file('src/main/java-include')
+        generatedSourceDirs += file('src/main/java-gen')
+    }
+}
+
+task copyFromBase(type: Copy) {
+    group = 'build'
+    description = 'Copy Java sources from base project'
+    from '../trainbenchmark-tool-jastadd-base/src/main/java'
+    from '../trainbenchmark-tool-jastadd-specialized-base/src/main/java'
+    into 'src/main/java-include'
+}
+
 shadowJar {
     classifier = 'fat'
     manifest { attributes 'Main-Class': 'de.tudresden.inf.st.train.jastadd.JastaddBenchmarkMain' }
@@ -7,7 +24,8 @@ shadowJar {
 
 task preprocess(type: JavaExec) {
     doFirst {
-        delete fileTree('src/main/jastadd-gen')
+        delete 'src/main/jastadd-gen'
+        mkdir 'src/main/jastadd-gen'
     }
     group = 'Build'
     main = "-jar"
@@ -19,9 +37,22 @@ task preprocess(type: JavaExec) {
             "--grammarName=src/main/jastadd-gen/Train",
             "--file"
     ]
+
+    inputs.files "../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/Train.relast"
+    outputs.files "src/main/jastadd-gen/Train.ast",
+            "src/main/jastadd-gen/Train.jadd",
+            "src/main/jastadd-gen/TrainRefResolver.jadd",
+            "src/main/jastadd-gen/TrainResolverStubs.jrag",
+            "src/main/jastadd-gen/TrainSerializer.jadd"
+
 }
 
 task jastadd(type: JavaExec) {
+    doFirst {
+        delete 'src/main/java-gen'
+        mkdir 'src/main/java-gen'
+    }
+
     group = 'Build'
     main = "-jar"
     args = [
@@ -31,18 +62,27 @@ task jastadd(type: JavaExec) {
             "--package=de.tudresden.inf.st.train.jastadd.ast",
             "--o=src/main/java-gen",
             "--tracing=api",
-    ] + fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("src/main/jastadd-gen/") + fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/").matching {exclude "*.relast"}
-    doFirst {
-        delete fileTree('src/main/java-gen')
-    }
+            "src/main/jastadd-gen/Train.ast",
+            "src/main/jastadd-gen/Train.jadd",
+            "src/main/jastadd-gen/TrainRefResolver.jadd",
+            "src/main/jastadd-gen/TrainResolverStubs.jrag",
+            "src/main/jastadd-gen/TrainSerializer.jadd"
+    ] + fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/").matching {exclude "*.relast"}
+
     doLast {
         ant.replaceregexp(match:'RefList extends List', replace:'RefList<T extends ASTNode> extends List<T>', flags:'g', byline:true) {
             fileset(dir: 'src/main/java-gen/de/tudresden/inf/st/train/jastadd/ast', includes: 'RefList.java')
         }
     }
 
-    inputs.files fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/") + fileTree("src/main/jastadd-gen/")
-    outputs.files file("src/main/java-gen")
+    inputs.files "src/main/jastadd-gen/Train.ast",
+            "src/main/jastadd-gen/Train.jadd",
+            "src/main/jastadd-gen/TrainRefResolver.jadd",
+            "src/main/jastadd-gen/TrainResolverStubs.jrag",
+            "src/main/jastadd-gen/TrainSerializer.jadd",
+            fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/"),
+            fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/")
+    outputs.files "src/main/java-gen"
 }
 
 sourceSets {
@@ -50,20 +90,19 @@ sourceSets {
         java {
             srcDir 'src/main/java'
             srcDir 'src/main/java-gen'
-            srcDir '../trainbenchmark-tool-jastadd-base/src/main/java'
-            srcDir '../trainbenchmark-tool-jastadd-specialized-base/src/main/java'
+            srcDir 'src/main/java-include'
         }
     }
 }
 
-clean {
-    delete fileTree('src/main/java-gen')
+task cleanGen(type:Delete) {
+    delete "src/main/java-gen"
+    delete "src/main/jastadd-gen"
+    delete "src/main/java-include"
 }
 
 dependencies {
     compile project(':trainbenchmark-tool')
-    compile project(':trainbenchmark-tool-jastadd-base')
-    compile project(':trainbenchmark-tool-jastadd-specialized-base')
     compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.8.8.1'
 }
 
@@ -71,5 +110,7 @@ test {
     outputs.upToDateWhen { false }
 }
 
+clean.dependsOn cleanGen
 jastadd.dependsOn preprocess
-compileJava.dependsOn jastadd
\ No newline at end of file
+compileJava.dependsOn jastadd
+compileJava.dependsOn copyFromBase
\ No newline at end of file
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-relast/src/main/java-gen/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-relast/src/main/java-gen/.gitignore
deleted file mode 100644
index d6b7ef32c8478a48c3994dcadc86837f4371184d..0000000000000000000000000000000000000000
--- a/trainbenchmark/trainbenchmark-tool-jastadd-relast/src/main/java-gen/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!.gitignore
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-specialized-incremental/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-specialized-incremental/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..6aba85ddc8403ededd3e82742948b055ef06a447
--- /dev/null
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-specialized-incremental/.gitignore
@@ -0,0 +1,3 @@
+src/main/jastadd-gen
+src/main/java-gen
+src/main/java-include
\ No newline at end of file
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-specialized-incremental/build.gradle b/trainbenchmark/trainbenchmark-tool-jastadd-specialized-incremental/build.gradle
index c17b53627dcc366aa8c12d40195589ef61a2c094..17a4bdda957cbf6de735ca128f5e1dbef1effb46 100644
--- a/trainbenchmark/trainbenchmark-tool-jastadd-specialized-incremental/build.gradle
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-specialized-incremental/build.gradle
@@ -1,5 +1,22 @@
 plugins { id "com.github.johnrengelman.shadow" version "1.2.3" }
 
+apply plugin: 'idea'
+
+idea {
+    module {
+        generatedSourceDirs += file('src/main/java-include')
+        generatedSourceDirs += file('src/main/java-gen')
+    }
+}
+
+task copyFromBase(type: Copy) {
+    group = 'build'
+    description = 'Copy Java sources from base project'
+    from '../trainbenchmark-tool-jastadd-base/src/main/java'
+    from '../trainbenchmark-tool-jastadd-specialized-base/src/main/java'
+    into 'src/main/java-include'
+}
+
 shadowJar {
     classifier = 'fat'
     manifest { attributes 'Main-Class': 'de.tudresden.inf.st.train.jastadd.JastaddBenchmarkMain' }
@@ -7,7 +24,8 @@ shadowJar {
 
 task preprocess(type: JavaExec) {
     doFirst {
-        delete fileTree('src/main/jastadd-gen')
+        delete 'src/main/jastadd-gen'
+        mkdir 'src/main/jastadd-gen'
     }
     group = 'Build'
     main = "-jar"
@@ -18,9 +36,19 @@ task preprocess(type: JavaExec) {
             "--grammarName=src/main/jastadd-gen/Train",
             "--file"
     ]
+
+    inputs.files "../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/Train.relast"
+    outputs.files "src/main/jastadd-gen/Train.ast",
+            "src/main/jastadd-gen/Train.jadd"
+
 }
 
 task jastadd(type: JavaExec) {
+    doFirst {
+        delete 'src/main/java-gen'
+        mkdir 'src/main/java-gen'
+    }
+
     group = 'Build'
     main = "-jar"
     args = [
@@ -32,18 +60,21 @@ task jastadd(type: JavaExec) {
             "--package=de.tudresden.inf.st.train.jastadd.ast",
             "--o=src/main/java-gen",
             "--tracing=api",
-    ] + fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("src/main/jastadd-gen/") + fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/").matching {exclude "*.relast"}
-    doFirst {
-        delete fileTree('src/main/java-gen')
-    }
+            "src/main/jastadd-gen/Train.ast",
+            "src/main/jastadd-gen/Train.jadd"
+    ] + fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/").matching {exclude "*.relast"}
+
     doLast {
         ant.replaceregexp(match:'RefList extends List', replace:'RefList<T extends ASTNode> extends List<T>', flags:'g', byline:true) {
             fileset(dir: 'src/main/java-gen/de/tudresden/inf/st/train/jastadd/ast', includes: 'RefList.java')
         }
     }
 
-    inputs.files fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/") + fileTree("src/main/jastadd-gen/")
-    outputs.files file("src/main/java-gen")
+    inputs.files "src/main/jastadd-gen/Train.ast",
+            "src/main/jastadd-gen/Train.jadd",
+            fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/"),
+            fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/")
+    outputs.files "src/main/java-gen"
 }
 
 sourceSets {
@@ -51,20 +82,19 @@ sourceSets {
         java {
             srcDir 'src/main/java'
             srcDir 'src/main/java-gen'
-            srcDir '../trainbenchmark-tool-jastadd-base/src/main/java'
-            srcDir '../trainbenchmark-tool-jastadd-specialized-base/src/main/java'
+            srcDir 'src/main/java-include'
         }
     }
 }
 
-clean {
-    delete fileTree('src/main/java-gen')
+task cleanGen(type:Delete) {
+    delete "src/main/java-gen"
+    delete "src/main/jastadd-gen"
+    delete "src/main/java-include"
 }
 
 dependencies {
     compile project(':trainbenchmark-tool')
-    compile project(':trainbenchmark-tool-jastadd-base')
-    compile project(':trainbenchmark-tool-jastadd-specialized-base')
     compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.8.8.1'
 }
 
@@ -72,5 +102,7 @@ test {
     outputs.upToDateWhen { false }
 }
 
+clean.dependsOn cleanGen
 jastadd.dependsOn preprocess
-compileJava.dependsOn jastadd
\ No newline at end of file
+compileJava.dependsOn jastadd
+compileJava.dependsOn copyFromBase
\ No newline at end of file
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-specialized-incremental/src/main/java-gen/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-specialized-incremental/src/main/java-gen/.gitignore
deleted file mode 100644
index d6b7ef32c8478a48c3994dcadc86837f4371184d..0000000000000000000000000000000000000000
--- a/trainbenchmark/trainbenchmark-tool-jastadd-specialized-incremental/src/main/java-gen/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!.gitignore
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-specialized/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-specialized/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..6aba85ddc8403ededd3e82742948b055ef06a447
--- /dev/null
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-specialized/.gitignore
@@ -0,0 +1,3 @@
+src/main/jastadd-gen
+src/main/java-gen
+src/main/java-include
\ No newline at end of file
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-specialized/build.gradle b/trainbenchmark/trainbenchmark-tool-jastadd-specialized/build.gradle
index bb3319ff0433bce141420025f08edca823734643..10f04a66471d1d7829a373ca429e14dc67223f8d 100644
--- a/trainbenchmark/trainbenchmark-tool-jastadd-specialized/build.gradle
+++ b/trainbenchmark/trainbenchmark-tool-jastadd-specialized/build.gradle
@@ -1,5 +1,22 @@
 plugins { id "com.github.johnrengelman.shadow" version "1.2.3" }
 
+apply plugin: 'idea'
+
+idea {
+    module {
+        generatedSourceDirs += file('src/main/java-include')
+        generatedSourceDirs += file('src/main/java-gen')
+    }
+}
+
+task copyFromBase(type: Copy) {
+    group = 'build'
+    description = 'Copy Java sources from base project'
+    from '../trainbenchmark-tool-jastadd-base/src/main/java'
+    from '../trainbenchmark-tool-jastadd-specialized-base/src/main/java'
+    into 'src/main/java-include'
+}
+
 shadowJar {
     classifier = 'fat'
     manifest { attributes 'Main-Class': 'de.tudresden.inf.st.train.jastadd.JastaddBenchmarkMain' }
@@ -7,7 +24,8 @@ shadowJar {
 
 task preprocess(type: JavaExec) {
     doFirst {
-        delete fileTree('src/main/jastadd-gen')
+        delete 'src/main/jastadd-gen'
+        mkdir 'src/main/jastadd-gen'
     }
     group = 'Build'
     main = "-jar"
@@ -18,9 +36,19 @@ task preprocess(type: JavaExec) {
             "--grammarName=src/main/jastadd-gen/Train",
             "--file"
     ]
+
+    inputs.files "../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/Train.relast"
+    outputs.files "src/main/jastadd-gen/Train.ast",
+            "src/main/jastadd-gen/Train.jadd"
+
 }
 
 task jastadd(type: JavaExec) {
+    doFirst {
+        delete 'src/main/java-gen'
+        mkdir 'src/main/java-gen'
+    }
+
     group = 'Build'
     main = "-jar"
     args = [
@@ -30,18 +58,21 @@ task jastadd(type: JavaExec) {
             "--package=de.tudresden.inf.st.train.jastadd.ast",
             "--o=src/main/java-gen",
             "--tracing=api",
-    ] + fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("src/main/jastadd-gen/") + fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/").matching {exclude "*.relast"}
-    doFirst {
-        delete fileTree('src/main/java-gen')
-    }
+            "src/main/jastadd-gen/Train.ast",
+            "src/main/jastadd-gen/Train.jadd"
+    ] + fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/").matching {exclude "*.relast"}
+
     doLast {
         ant.replaceregexp(match:'RefList extends List', replace:'RefList<T extends ASTNode> extends List<T>', flags:'g', byline:true) {
             fileset(dir: 'src/main/java-gen/de/tudresden/inf/st/train/jastadd/ast', includes: 'RefList.java')
         }
     }
 
-    inputs.files fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/") + fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/") + fileTree("src/main/jastadd-gen/")
-    outputs.files file("src/main/java-gen")
+    inputs.files "src/main/jastadd-gen/Train.ast",
+            "src/main/jastadd-gen/Train.jadd",
+            fileTree("../trainbenchmark-tool-jastadd-base/src/main/jastadd/"),
+            fileTree("../trainbenchmark-tool-jastadd-specialized-base/src/main/jastadd/")
+    outputs.files "src/main/java-gen"
 }
 
 sourceSets {
@@ -49,20 +80,19 @@ sourceSets {
         java {
             srcDir 'src/main/java'
             srcDir 'src/main/java-gen'
-            srcDir '../trainbenchmark-tool-jastadd-base/src/main/java'
-            srcDir '../trainbenchmark-tool-jastadd-specialized-base/src/main/java'
+            srcDir 'src/main/java-include'
         }
     }
 }
 
-clean {
-    delete fileTree('src/main/java-gen')
+task cleanGen(type:Delete) {
+    delete "src/main/java-gen"
+    delete "src/main/jastadd-gen"
+    delete "src/main/java-include"
 }
 
 dependencies {
     compile project(':trainbenchmark-tool')
-    compile project(':trainbenchmark-tool-jastadd-base')
-    compile project(':trainbenchmark-tool-jastadd-specialized-base')
     compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.8.8.1'
 }
 
@@ -71,4 +101,5 @@ test {
 }
 
 jastadd.dependsOn preprocess
-compileJava.dependsOn jastadd
\ No newline at end of file
+compileJava.dependsOn jastadd
+compileJava.dependsOn copyFromBase
\ No newline at end of file
diff --git a/trainbenchmark/trainbenchmark-tool-jastadd-specialized/src/main/java-gen/.gitignore b/trainbenchmark/trainbenchmark-tool-jastadd-specialized/src/main/java-gen/.gitignore
deleted file mode 100644
index d6b7ef32c8478a48c3994dcadc86837f4371184d..0000000000000000000000000000000000000000
--- a/trainbenchmark/trainbenchmark-tool-jastadd-specialized/src/main/java-gen/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!.gitignore