From 753a6c60f47f3ac4f270005b65e9d6481de8eb68 Mon Sep 17 00:00:00 2001 From: Ashlee Young Date: Fri, 23 Oct 2015 10:00:02 -0700 Subject: Adding maven and ant source trees Change-Id: I0a39b9add833a31b9c3f98d193983ae2f3a5a445 Signed-off-by: Ashlee Young --- .../apache-ant-1.9.6/manual/Tasks/property.html | 345 +++++++++++++++++++++ 1 file changed, 345 insertions(+) create mode 100644 framework/src/ant/apache-ant-1.9.6/manual/Tasks/property.html (limited to 'framework/src/ant/apache-ant-1.9.6/manual/Tasks/property.html') diff --git a/framework/src/ant/apache-ant-1.9.6/manual/Tasks/property.html b/framework/src/ant/apache-ant-1.9.6/manual/Tasks/property.html new file mode 100644 index 00000000..7dc90a75 --- /dev/null +++ b/framework/src/ant/apache-ant-1.9.6/manual/Tasks/property.html @@ -0,0 +1,345 @@ + + + + + + +Property Task + + + + +

Property

+

Description

+

Sets a property +(by name and value), or set of properties (from file or +resource) in the project. Properties are case sensitive.

+ Properties are immutable: whoever sets a property first freezes it for the + rest of the build; they are most definitely not variables. +

There are seven ways to set properties:

+ +

Although combinations of these ways are possible, only one should be used +at a time. Problems might occur with the order in which properties are set, for +instance.

+

The value part of the properties being set, might contain references to other +properties. These references are resolved at the time these properties are set. +This also holds for properties loaded from a property file.

+

A list of predefined properties can be found here.

+

Since Apache Ant 1.8.0 it is possible to load properties defined in xml +according to Suns DTD, +if Java5+ is present. For this the name of the file, resource or url has +to end with .xml.

+ +

Parameters

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AttributeDescriptionRequired
namethe name of the property to set.No
valuethe value of the property.One of these or + nested text, when using the name attribute
locationSets the property to the absolute filename of the + given file. If the value of this attribute is an absolute path, it + is left unchanged (with / and \ characters converted to the + current platforms conventions). Otherwise it is taken as a path + relative to the project's basedir and expanded.
refidReference to an object + defined elsewhere. Only yields reasonable results for references + to PATH like structures or properties.
resource the name of the classpath resource containing + properties settings in properties file format.One of these, when + not using the name attribute
filethe location of the properties file to load.
urla url containing properties-format settings.
environmentthe prefix to use when retrieving environment variables. Thus + if you specify environment="myenv" you will be able to access OS-specific + environment variables via property names "myenv.PATH" or + "myenv.TERM". Note that if you supply a property name with a final + "." it will not be doubled; i.e. environment="myenv." will still + allow access of environment variables through "myenv.PATH" and + "myenv.TERM". This functionality is currently only implemented + on select platforms. Feel free to send patches to increase the + number of platforms on which this functionality is supported ;).
+ Note also that properties are case-sensitive, even if the + environment variables on your operating system are not; e.g. Windows 2000's + system path variable is set to an Ant property named "env.Path" + rather than "env.PATH".
classpaththe classpath to use when looking up a resource.No
classpathrefthe classpath to use when looking up a resource, + given as reference to a <path> defined + elsewhere..No
prefixPrefix to apply to properties loaded using file, + resource, or url. + A "." is appended to the prefix if not specified.No
prefixValuesWhether to apply the prefix when expanding the + right hand side of properties loaded using file, + resource, or url. + Since Ant 1.8.2No (default=false)
relativeIf set to true the relative path + to basedir is set. Since Ant 1.8.0No (default=false)
basedirThe basedir to calculate the relative path + from. Since Ant 1.8.0No (default=${basedir})
+ +

OpenVMS Users

+

With the environment attribute this task will load all defined +logicals on an OpenVMS system. Logicals with multiple equivalence names get +mapped to a property whose value is a comma separated list of all equivalence +names. If a logical is defined in multiple tables, only the most local +definition is available (the table priority order being PROCESS, JOB, GROUP, +SYSTEM). +

+ +

Any OS except OpenVMS

+

Starting with Ant 1.8.2 if Ant detects it is running of a Java 1.5 + VM (or better) Ant will use System.getenv rather than + its own OS dependent native implementation. For some OSes this + causes minor differences when compared to older versions of Ant. + For a full list + see Bugzilla + Issue 49366. In particular:

+ + +

Parameters specified as nested elements

+

classpath

+

Property's classpath attribute is a PATH like structure and can also be set via a nested +classpath element.

+ +

Examples

+
  <property name="foo.dist" value="dist"/>
+

sets the property foo.dist to the value "dist".

+ +
  <property name="foo.dist">dist</property>
+

sets the property foo.dist to the value "dist".

+ +
  <property file="foo.properties"/>
+

reads a set of properties from a file called "foo.properties".

+ +
  <property url="http://www.mysite.com/bla/props/foo.properties"/>
+

reads a set of properties from the address "http://www.mysite.com/bla/props/foo.properties".

+ +
  <property resource="foo.properties"/>
+

reads a set of properties from a resource called "foo.properties".

+

Note that you can reference a global properties file for all of your Ant +builds using the following:

+ +
  <property file="${user.home}/.ant-global.properties"/>
+

since the "user.home" property is defined by the Java virtual machine +to be your home directory. Where the "user.home" property resolves to in +the file system depends on the operating system version and the JVM implementation. +On Unix based systems, this will map to the user's home directory. On modern Windows +variants, this will most likely resolve to the user's directory in the "Documents +and Settings" or "Users" folder. Older windows variants such as Windows 98/ME are less +predictable, as are other operating system/JVM combinations.

+ +
+  <property environment="env"/>
+  <echo message="Number of Processors = ${env.NUMBER_OF_PROCESSORS}"/>
+  <echo message="ANT_HOME is set to = ${env.ANT_HOME}"/>
+
+

reads the system environment variables and stores them in properties, prefixed with "env". +Note that this only works on select operating systems. +Two of the values are shown being echoed. +

+ +
+  <property environment="env"/>
+  <property file="${user.name}.properties"/>
+  <property file="${env.STAGE}.properties"/>
+  <property file="build.properties"/>
+
+

This buildfile uses the properties defined in build.properties. Regarding to the +environment variable STAGE some or all values could be overwritten, e.g. having +STAGE=test and a test.properties you have special values for that (like another +name for the test server). Finally all these values could be overwritten by personal settings with +a file per user.

+ +
+  <property name="foo" location="my/file.txt" relative="true" basedir=".."/>
+
+

Stores the relative path in foo: projectbasedir/my/file.txt

+ +
+  <property name="foo" location="my/file.txt" relative="true" basedir="cvs"/>
+
+

Stores the relative path in foo: ../my/file.txt

+ + +

Property Files

+ +As stated, this task will load in a properties file stored in the file +system, or as a resource on a classpath. Here are some interesting facts +about this feature +
    +
  1. If the file is not there, nothing is printed except at -verbose log +level. This lets you have optional configuration files for every +project, that team members can customize. +
  2. The rules for this format match java.util.Properties.
  3. +
  4. Trailing spaces are not stripped. It may have been what you wanted.
  5. +
  6. Want unusual characters? Escape them \u0456 or \" style.
  7. +
  8. Ant Properties are expanded in the file
  9. +
  10. If you want to expand properties defined inside the same file and + you use the prefix attribute of the task, you must use the same + prefix when expanding the properties or + set prefixValues to true.
  11. +
+In-file property expansion is very cool. Learn to use it. +

+Example: +

+build.compiler=jikes
+deploy.server=lucky
+deploy.port=8080
+deploy.url=http://${deploy.server}:${deploy.port}/
+
+ + + +

Notes about environment variables

+

+ Ant runs on Java 1.2 therefore it cannot use Java5 features for accessing environment + variables. So it starts a command in a new process which prints the environment variables, + analyzes the output and creates the properties.
+ There are commands for the following operating systems implemented in + + Execute.java (method getProcEnvCommand()): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
OScommand
os/2 cmd /c set
windows
* win9x command.com /c set
* other cmd /c set
z/os /bin/env OR /usr/bin/env OR env (depending on read rights)
unix /bin/env OR /usr/bin/env OR env (depending on read rights)
netware env
os/400 env
openvms show logical
+

+ + + -- cgit 1.2.3-korg