My codebase has a long build.properties file written by someone else. I want to see the available built targets without having to search through the file manually. Does ant have a command for this - something like ant show-targets - that will make it list all the targets in the build file?
4 Answers
The -p or -projecthelp option does exactly this, so you can just try:
ant -p build.xml
From ant's command line documentation:
The
-projecthelpoption prints out a list of the build file's targets. Targets that include adescriptionattribute are listed as "Main targets", those without adescriptionare listed as "Other targets", then the "Default" target is listed ("Other targets" are only displayed if there are no main targets, or if Ant is invoked in-verboseor-debugmode).
The -p or -projecthelp option does exactly this, so you can do:
ant -p build.xml
You can make a target to invoke this like:
<target name="help">
<java classname="org.apache.tools.ant.Main">
<arg value="-projecthelp" />
<arg value="-buildfile" />
<arg value="${ant.file}" />
</java>
</target>
which you can then set as the default, so just typing ant will list the available targets.
(Combining @Grodriguez' answer and @sschuberth's comment - I thought it was worth an answer by itself)