Make is a traditional and widely used development utility that is used to compile project files. The make determines which pieces of a large program need to be recompiled, and issues commands to recompile them.

In our (Regex) Java projects we usually prefer using Ant especially what comes to in house projects.

There are a couple of reasons why Make is not the optimal choice for Java programs:

  • Make starts javac for each .java file. Due to the nature of Java, the compiler startup time is significant, which is why full compiles using Make can be very slow, as there needs to be a new java compiler instance for each file. (Well, not exactly, as javac can compile multiple files at the same time. But usually it needs to be started a few times.)
  • Make is not exactly platform independent. Whereas it's possible to write Makefiles that take into account things like path separators, etc, the result tends to be a bit confusing and complex. Also, the arcane syntax of Make does not exactly help.
  • Makefiles also often rely on the standard UNIX (see GNU, for example) toolset to be available, which is not true on platforms such as Microsoft Windows.

See also: GNU make manuals

Add new attachment

Only authorized users are allowed to upload new attachments.
« This page (revision-1) was last changed on 18-Jul-2001 10:33 by UnknownAuthor