This book is about Ant, the award-winning Java build tool. Ant has become the centerpiece of so many projects’ build processes because it is easy to use, is platform independent, and addresses the needs of today’s projects to automate testing and deployment. From its beginnings as a helper application to compile Tomcat, Sun’s (now Apache’s) Java web server, it has grown to be a stand-alone tool adopted by all major open source Java projects, and has changed people’s expectations of their development tools.
If you have never before used Ant, this book will introduce you to it, taking you systematically through the core stages of most Java projects: compilation, testing, execution, packaging, and delivery. If you are an experienced Ant user, we will show you how to “push the envelope” in using Ant. Indeed, we believe that some of the things shown in this book were never before done with Ant. We also place an emphasis on how to use Ant as part of a large project, drawing out best practices from our own experiences.
Whatever your experience with Ant, we believe that you will learn a lot from this book, and that your software projects will benefit from using Ant as a foundation of their build process.
This book is for all Java developers working on software projects ranging from the simple personal project to the enterprise-wide team effort. We assume no prior experience of Ant, although even experienced Ant users should find much to interest them in the later chapters. We do expect our readers to have basic knowledge of Java, although the novice Java developer will benefit from learning Ant in conjunction with Java. Some of the more advanced Ant projects, such as building Enterprise Java applications and web services, are going to be of interest primarily to those people working in those areas. We will introduce these technology areas, but will defer to other books to cover them fully.
About the Authors
ERIK HATCHER, an Ant project committer, has written popular articles on Ant’s JUnit integration. He maintains jGuru’s Ant FAQ where he answers the world’s toughest Ant questions. Erik is both a Sun Certified Java Programmer and a Microsoft Certified Solution Developer. He has written several articles for IBM developerWorks, most notably about, and improving upon, Ant’s JUnit integration. He lives in Charlottesville, Virginia, where he works as a Senior Java Architect by day, and enjoys spending time with his beautiful wife, Carole, and two wonderful sons, Jakob and Ethan. See him on the Web at http://erik.hatcher.net/.
STEVE LOUGHRAN works for Hewlett Packard, where he develops imaging and printing web services that fuse Java and Ant. He is also a committer on the Ant and Axis projects at Apache. Prior to this, he was a research scientist in HP Laboratories in Bristol, England, dabbling in areas from distributed systems to context aware laptops. He holds a first-class honors degree in Computer Science from Edinburgh University. He lives in Corvallis, Oregon, with his wife Bina, and son, Alexander. For entertainment he enjoys Alpine-style mountaineering, saying “it’s all about risk management.” See him on the Web at http://www.iseran.com/Steve.