I'm integrating the Xtend compiler into the Gradle Android build system and I have the following problem:
Xtend uses bytecode enhancement to install debug traces into the generated class files. If I do this directly on the classes folder, then dirty checking for the enhance task will not work properly (as it would modify its own inputs). So instead I tell the Java compile task to put classes somewhere else and then let the enhance task write the enhanced classes to the original classes directory. The problem is now that the subsequent Jar/Proguard tasks are directly wired to javaCompile.destinationDir and thus will still pick up the unenhanced classes. In contrast, the Gradle Java plugin has a "classesDir" property on each sourceset and all tasks point to that property. This way you can manipulate individual tasks without changing the behavior of other ones. This makes indirections as the one described above possible. It would be nice if the Android plugin used a similar approach instead of wiring up task inputs/outputs directly. -- You received this message because you are subscribed to the Google Groups "adt-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
