echoproperties

Description

Displays all the current properties (or a subset of them specified by a nested <propertyset>) in the project. The output can be sent to a file if desired. This task can be used as a somewhat contrived means of returning data from an <ant> invocation, but is really for debugging build files.

Parameters

Attribute Description Required
destfile If specified, the value indicates the name of the file to send the output of the statement to. The generated output file is compatible for loading by any Java application as a property file. If not specified, then the output will go to the Apache Ant log. No
prefix a prefix which is used to filter the properties only those properties starting with this prefix will be echoed.

No
regex a regular expression which is used to filter the properties only those properties whose names match it will be echoed. No
failonerror By default, the "failonerror" attribute is enabled. If an error occurs while writing the properties to a file, and this attribute is enabled, then a BuildException will be thrown, causing the build to fail. If disabled, then IO errors will be reported as a log statement, and the build will continue without failure from this task. No
format One of text or xml. Determines the output format. Defaults to text. No

Parameters specified as nested elements

propertyset

You can specify subsets of properties to be echoed with propertysets. Using propertysets gives more control on which properties will be picked up. The attributes prefix and regex are just shortcuts that use propertysets internally.

since Ant 1.6.

Examples

  <echoproperties/>

Report the current properties to the log.

  <echoproperties destfile="my.properties"/>

Report the current properties to the file "my.properties", and will fail the build if the file could not be created or written to.

  <echoproperties destfile="my.properties" failonerror="false"/>

Report the current properties to the file "my.properties", and will log a message if the file could not be created or written to, but will still allow the build to continue.

  <echoproperties prefix="java."/>

List all properties beginning with "java."

  <echoproperties>
    <propertyset>
      <propertyref prefix="java."/>
    </propertyset>
  </echoproperties>

This again lists all properties beginning with "java." using a nested </propertyset> which is an equivalent but longer way.

  <echoproperties regex=".*ant.*"/>

Lists all properties that contain "ant" in their names. The equivalent snippet with </propertyset> is:

  <echoproperties>
    <propertyset>
      <propertyref regex=".*ant.*"/>
    </propertyset>
  </echoproperties>