Edoardo Luppi
11/23/2023, 2:32 PMjava {
sourceSets {
main {
java.srcDir("src/jvmMain/gen")
}
}
}
Edit2: not really working in case of Java sources sad panda
Edit: I can answer myself
kotlin {
sourceSets {
jvmMain {
kotlin {
srcDir("src/jvmMain/gen")
}
}
}
}
Maybe dumb question, but how do I add a `gen`erated source folder, which will be ignored but part of the classpath, under src/jvmMain
?
The project is multiplatform.Vampire
11/23/2023, 3:15 PMsrcDir(theTaskGeneratingTheSources)
then all consumers of source files automatically have the necessary task dependency too.Edoardo Luppi
11/23/2023, 3:23 PMgenerateGrammarSource
task uses outputDirectory
to register the task outputs
That means the source set folder will be registered on the deepest package folder, e.g. src/jvmMain/gen/com/my/pkg/parser
Can I override the outputs
for that task after setting outputDirectory
?
generateGrammarSource {
val `package` = "com/my/pkg/parser"
val outputDir = "src/jvmMain/gen/$`package`"
outputDirectory = projectDir.resolve(outputDir)
arguments.add("-visitor");
arguments.add("-long-messages");
}
java {
sourceSets {
main {
java.srcDir(generateGrammarSource)
}
}
}
Vampire
11/23/2023, 4:43 PMEdoardo Luppi
11/23/2023, 4:44 PMVampire
11/23/2023, 4:45 PM