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.

Reply via email to