If you have a large project, you often want a way to avoid recompiling everything. You want something to track what really needs to be recompiled. It is actually a little more subtle than examining the timestamps to see which files have changed since the last compile. If unchanged files use static final constants that may have changed, they too need to be recompiled. Various tools make various brave attempts at deciding what needs to be recompiled. However, it is wise to recompile the universe from time to time in case something slipped through the cracks, especially the final build and test before shipping. Any tool for doing this in generically called a make.
A build tool tackles one or more of the following problems:
Optional Replicator mirror
of mindprod.com
on local hard disk J: