Java Reference
In-Depth Information
Optionally, other tasks might include checking code out of source code control, generating
documentation, and even deploying the results into production.
The IDE build
Some companies still do their builds inside integrated development environments (IDEs).
Although this is not in itself a bad thing, it often leads to long-term problems. Sooner or
later such companies wind up with a special computer that no one is allowed to touch, even
though the original owner left or transferred to another division long ago, because it's the
only system where the build still works.
Current thinking is that the source code control system should manage all aspects of a
build, from the required scripts to the JAR dependencies. That way you can always be sure
the build is correct and self-sufficient, which avoids the whole “at least it works on my ma-
chine” problem.
In fact, the recent trend in development processes is toward continuous delivery, where a
single command performs the whole sequence from build to deployment in one motion. [ 1 ]
1 See Jez Humble and Dave Farley's book Continuous Delivery (Addison Wesley, 2010) for details. (Available
through its companion website, http://continuousdelivery.com/.)
There are two primary build tools in the Java world: Ant and Maven. Ant is older and is
gradually being replaced, but it is still common in the industry and is the foundation of
everything that came afterward. Maven is used extensively in the Java industry but tends to
trigger strong feelings in developers.
A guide to the technologies covered in this chapter is shown in figure 5.1 . I'll start with the
Apache Ant project in the next section.
 
Search WWH ::




Custom Search