Gradle Plugin that generates .java and .class files

I’ll write it in groovy because I’m too lazy to do it in java.
Pls adapt as necessary

apply plugin: 'java'
dependencies {
   // add classes dir to compile classpath
   compile files("$buildDir/generated/classes")
}
sourceSets.main.java.srcDir "$buildDir/generated/java" // notice I'm calling "srcDir" not "setSrcDir"
task generate {
   outputs.dir "$buildDir/generated"
   doLast {
      // generate files in $buildDir/generated/java and $buildDir/generated/classes
   }
}
compileJava.dependsOn "generate"
processResources {
   dependsOn "generate" 
   from "$buildDir/generated/classes" // add generated classes to the jar
}
1 Like