Automated Build System

This topic is an overview of the automated build system (Ant) used by the CLforJava project at the College of Charleston.

-- JerryBoetje - 09 Jul 2003

Apache Ant

Apache Ant is a Java-based build tool. It was developed to surpass the limitations of all the other build tools like Make, gnumake, etc. Since it is java-based it allows a user to develop software across multiple platforms unlike other tools like Make which are inherently shell based, that is specific to Unix. Instead of writing shell commands, the configuration files are XML-based, calling out a target tree where various tasks get executed. Each task is run by an object that implements a particular Task interface.But if the user really needs to execute a shell command, Ant has a task that allows different commands to be executed based on the OS that it is executing on. Isn't Apache Ant great? Titled after one of the smallest creatures (the ant); the author gave it this name because it was a tool that could do big things. Before you go and download it at ant.apache.org find out more about what a build tool is and does.

What is a build tool?

  • A build tool is a programming utility that is used when building a new version of a program.

  • Here are a few reasons why we use Ant in CLforJava - it is platform independent, shell based, open source and uses XML.

Build System Components

Build Structure

Maintenance

The build will need to be updated periodically throughout the project. When do you need to update the build.xml file? When a new directory is created in the DevelopmentStructure, depending on the new directory criteria it may need to be added to the javadoc section of the build if the new directory contains any code. Another change to the build may be in the dist section of the build, this is where all the src and javadoc get put into separate jar files with a date stamp. The CLforJava project may get very big after some time, Jerry may want the srcCompile separated to save time, you will have to figure out how to separate the compile sections and in what order they may need to be in. The build.xml file will also need to be updated when adding new tasks dealing with the build process. An example of this was when targets were added to point to xml files when the build number was implemented. Other reasons and situation may occurr in the future.

DevEnvironmentOpenAction?

-- ValerieBrothers - 23 Sep 2003

-- ValerieBrothers - 24 Nov 2003

I just did a little spell checking and corrected three errors, guess which three, I think you'll be pleasantly suprised...

-- RichardBaldwin - 21 Jan 2004

-- RobertDunigan - 17 Mar 2006

-- RobertDunigan - 06 May 2006

Topic attachments
I Attachment Action Size Date Who Comment
PDFpdf AntGuide1.6.0.pdf manage 451.5 K 2006-03-17 - 16:13 RobertDunigan Updated Ant Guide 1.6.0
PDFpdf AntManual1.5.4.pdf manage 1240.7 K 2004-01-23 - 03:52 DavidWinkler Documentation for Ant (from ant.apache.org)
PDFpdf AntManual1.6.5.pdf manage 5822.4 K 2006-03-17 - 16:17 RobertDunigan Documentation for Ant (from ant.apache.org)
PDFpdf AntTasks1.6.0.pdf manage 1448.1 K 2006-03-17 - 16:15 RobertDunigan Updated Ant Tasks 1.6.0
PowerPointppt DiscoveringApacheAnt_revised.ppt manage 50.0 K 2003-11-06 - 00:04 UnknownUser Presentation about Apache Ant
PowerPointppt TheBuildSystem.ppt manage 80.5 K 2006-05-06 - 21:35 RobertDunigan Spring 2006 Presentation on the Build Number, RSS Feed, and SmokeTest? Reports
Topic revision: r33 - 2009-03-11 - 20:28:18 - MadelineWilliams
 
Home
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback