We would like to draw the attention of the Ant community to the experimental tool that we have recently developed and then integrated with Ant. It is called Javamake, and is available at http://www.experimentalstuff.com/Technologies/JavaMake/index.html
The function of the "javamake" task that we provide can be viewed as a combination of those of the standard "javac" and "depend" tasks. That is, - it recompiles sources that are newer than corresponding classes; - it tracks dependencies between project classes and, once any class changes in an incompatible way, recompiles those that may be affected by this change. E.g. if the signature of a non-private method m() in class C is changed, javamake tries to recompile all classes that previously called C.m(). The advantage of javamake is that it performs intelligent dependency checking, which is based on the analysis of the actual change to a class. E.g. in the above example, only those classes that referenced the changed method m() of class C would be recompiled. In the same situation, many other dependency checking tools would recompile *all* classes that depend on C in any way, which may include those that, say, reference some field of C, extend C, and so on. Such redundant compilations may take much time, but still may be insufficient in some cases. The most obvioius example is a changed compile-time constant (see the online doc on the above web site for details). Since the introduction of Javamake, we had a lot of positive feedback, most of which is from people who use it as an extension to Ant. We therefore would like to propose Javamake as an external Ant task. Your feedback is very welcome. Regards, Javamake development team -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
