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.