Using make tools with javac
You can use make tools with the javac compiler.
Although javac handles dependency analysis well, using
javac by itself misses rebuilds that a make tool does
not. Specifically, make detects modifications of indirect dependencies that
javac does not. If A.java
depends on
B.java
and B.java
depends on C.java
, when
you change C.java
, the command javac
A.java does not rebuild C.class
. Therefore, if you are
using javac directly, you must recompile each file as you change it.
Many Java applications have some components that are compiled natively or are written in another language. For at least those parts of their applications, developers need makefile-based building.