With PropertyTask, you can define user properties in your build file.
Table B.49: Attributes
| Name | Type | Description | Default | Required |
|---|---|---|---|---|
name
|
String
| The name of the Property. | n/a | Yes (unless using file or environment)
|
value
|
String
| The value of the Property. | n/a | Yes (unless using file or environment)
|
environment
|
String
| Loads properties from the environment with the specified value as prefix. Thus if you specify environment="myenv" you will be able to access OS-specific environment variables via property names "myenv.PATH" or "myenv.TERM". | n/a | No |
file
|
String
| Path to properties file. | n/a | No |
override
|
Boolean
| Whether to force override of existing value. |
false
| No |
prefix
|
String
| Used when properites are loaded from file. Prefix is applied to properties loaded from specified file. A "." is appended to the prefix if not specified. | n/a | No |
refid
|
String
| A reference to a previously defined property | n/a | No |
logoutput
|
Boolean
| Whether to log returned output as MSG_INFO instead of MSG_VERBOSE. |
true
| No |
quiet
|
Boolean
| Whether to display a warning if the property file does not exist. |
true
| No |
required
|
Boolean
| Whether to halt with an error if the property file does not exist. |
false
| No |
Important note about scope: when the <property> tag is called inside a
<phingcall> tag, any properties are set in a new local scope. Thus, any properties or
other variables set inside that scope will cease to exist (or revert to their previous value) once the
parent <phingcall> tag completes.
<property name="strings.test" value="Harr harr, more power!" />
<echo message="${strings.test}" />
<property name="foo.bar" value="Yet another property..." />
<echo message="${foo.bar}" />
<property file="build.properties" />
<property environment="env" />
<property name="newproperty" value="Hello">
<filterchain>
<replaceregexp>
<regexp pattern="Hello" replace="World" ignoreCase="true"/>
</replaceregexp>
</filterchain>
</property>