This is a proposed DesignPattern for the ApacheAnt build tool -- to have a default "usage" target to describe the usage of the given build file.
Be sure to consider the discussion below, which suggests that users use the '-projecthelp' (or '-p') command line option to print metadata about the project, and that build script writers should use the
Context:
Problem:
Therefore:
Example:
Usage: build target-name
Available targets:
target 1 - this target does blah blah blah. Don't forget to blah blah blah
target 2 - this target does blah blah blah.
target 3 - this target does blah blah blah.
Then at the top of the build script set the default task:
Or... you can give all the user-level tasks description attributes, and then use ant -projecthelp.
Make the default task useful... save yourself some key strokes.
Use ant -p to list the description attribute of each task. If those are maintained it might be enough for a simple project. If you have a huge project (and which ones aren't these days), usage sounds like a winning idea. -- RobertField
Once you have a description attribute on a task, ant -p will only list those tasks with a description; the others are hidden. *Unless* you use ant -p -v , which lists everything.
You can also have a
Overall then, there is little need for an Ant Usage Target (its a target, not a task), and only increases maintenance costs just like any other document that is not synchronized with the source.
Also, adding a