Computer Science 507
Software Engineering
Spring 2013, The College of Saint Rose
In this assignment, you will learn or refersh your knowledge of the make and Ant programs that can be used to manage project builds. You may work alone or with a partner on this assignment.
Getting Set Up
Create a directory in your account on mogul.strose.edu for your work on this lab (a directory lab2 inside the cs507 directory you created for the first lab might be appropriate).
In your favorite editor, create a document in which you will answer the questions you find in this lab. Start by putting your name at the top of this document.
Using the make Utility
Any non-trivial software development involves many iterations of editing, compiling, linking, and running your programs. The code will be spread across multiple files. The most common mechanism for managing this process when programming in C in a Unix environment is the make utility. Its utility is not restricted to C programs. The actions of make are specified by rules in a Makefile. Copy the following example to your account on mogul.strose.edu:
See Example:
/home/cs507/examples/make-example
You should find a small C program that demonstrates the use of multiple source files and a Makefile. Compile the program with make.
Now, look at the rules and the description in the Makefile.
Apache Ant for Java Build Management
While make can be used to manage builds of a Java project, many Java projects use a tool called Apache Ant (http://ant.apache.org/. Read the first section on that page to get a brief description of Ant.
Our goal today is only to see the basics of Ant, so we will use an example that can build a "Hello, World" Java program using Ant.
java -cp AntHelloWorld.jar com/passion4java/helloworld/ant/AntHelloWorld
You have now compiled a Java program using Ant and run that Java program from a jar (Java ARchive) file.
Submission and Grading
Transfer the files you have created for this lab to the computer you're working on with a secure copy program like WinSCP or FileZilla.
To submit the assignment, send your answers to the questions to terescoj AT strose.edu by TBD.
Please include a meaningful subject line (something like "CS507 Lab 2 Submission"). Please do not include any additional files, such as emacs backup files, object files, or executable programs.
This lab will be graded out of 15 points according to the breakdown shown by the lab questions above.