On Friday, December 20, 2013, Adam Murdoch wrote: > Hi, > > Just some thoughts on how we might spike a solution for incremental java > compilation, to see if it’s worthwhile and what the effort might be: > > The goal is to improve the Java compile tasks, so that they do less work > for certain kinds of changes. Here, ‘less work’ means compiling fewer > source files, and also touching fewer output files so that consumers of the > task output can also do less work. It doesn’t mean compiling the *fewest* > possible number of source files - just fewer than we do now. > > The basic approach comes down to keeping track of dependencies between > source files and the other compilation inputs - where inputs are source > files, the compile classpath, the compile settings, and so on. Then, when > an input changes, we would recompile the source files that depend on that > input. Currently, we assume that every source file depends on every input, > so that when an input changes we recompile everything. > > Note that we don’t necessarily need to track dependencies at a > fine-grained level. For example, we may track dependencies between packages > rather than classes, >
That is I think the approach of the incremental compile functionality used in the OpenJDK Java build. Hans