Browse Source

modernize a whole lot of links and example outputs - BZ 55551 - submitted by Erik Costlow

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@1522924 13f79535-47bb-0310-9956-ffa450edef68
master
Stefan Bodewig 11 years ago
parent
commit
f5fb02e493
34 changed files with 131 additions and 112 deletions
  1. +3
    -2
      manual/Tasks/checksum.html
  2. +2
    -2
      manual/Tasks/concat.html
  3. +3
    -3
      manual/Tasks/ear.html
  4. +1
    -1
      manual/Tasks/echo.html
  5. +1
    -1
      manual/Tasks/ejb.html
  6. +2
    -2
      manual/Tasks/exec.html
  7. +3
    -3
      manual/Tasks/ftp.html
  8. +4
    -5
      manual/Tasks/jarlib-available.html
  9. +4
    -5
      manual/Tasks/jarlib-display.html
  10. +4
    -5
      manual/Tasks/jarlib-manifest.html
  11. +3
    -4
      manual/Tasks/jarlib-resolve.html
  12. +1
    -1
      manual/Tasks/java.html
  13. +12
    -12
      manual/Tasks/javadoc.html
  14. +2
    -2
      manual/Tasks/javah.html
  15. +4
    -4
      manual/Tasks/manifest.html
  16. +1
    -1
      manual/Tasks/mimemail.html
  17. +5
    -7
      manual/Tasks/property.html
  18. +1
    -1
      manual/Tasks/sql.html
  19. +3
    -3
      manual/Tasks/tstamp.html
  20. +1
    -1
      manual/Tasks/typedef.html
  21. +2
    -2
      manual/Tasks/unzip.html
  22. +2
    -2
      manual/Tasks/zip.html
  23. +2
    -2
      manual/Types/assertions.html
  24. +3
    -3
      manual/Types/extension.html
  25. +2
    -2
      manual/Types/extensionset.html
  26. +1
    -1
      manual/Types/regexp.html
  27. +2
    -2
      manual/Types/zipfileset.html
  28. +16
    -17
      manual/install.html
  29. +3
    -3
      manual/properties.html
  30. +3
    -6
      manual/proxy.html
  31. +2
    -3
      manual/running.html
  32. +5
    -1
      src/etc/testcases/taskdefs/get.xml
  33. +24
    -3
      src/main/org/apache/tools/ant/taskdefs/Get.java
  34. +4
    -0
      src/tests/junit/org/apache/tools/ant/taskdefs/GetTest.java

+ 3
- 2
manual/Tasks/checksum.html View File

@@ -48,7 +48,8 @@ Warning: the case of the extension is that of the algorithm used.
If you ask for "SHA1", you get a .SHA1 extension; if you ask for "sha1", you
get a file ending in .sha1. The Java Crypto Engines are case-insensitive
in matching algorithms, so choose a name to match your desired output extension,
or set the <tt>fileext</tt> attribute.
or set the <tt>fileext</tt> attribute. The names of common hashing algorithms can be located on the
<a target="_blank" href="http://docs.oracle.com/javase/7/docs/technotes/guides/security/StandardNames.html#MessageDigest">Cryptography Architecture Standard Algorithm Name Documentation</a>
</p>

<h3>Parameters</h3>
@@ -76,7 +77,7 @@ or set the <tt>fileext</tt> attribute.
<td valign="top">algorithm</td>
<td valign="top">Specifies the algorithm to be used to
compute the checksum. Defaults to &quot;MD5&quot;.
Other popular algorithms like &quot;SHA&quot; or &quot;SHA-512&quot; may be used
Other <a target="_blank" href="http://docs.oracle.com/javase/7/docs/technotes/guides/security/StandardNames.html#MessageDigest">popular algorithms</a> like &quot;SHA&quot; or &quot;SHA-512&quot; may be used
as well.
</td>
<td valign="top" align="center">No</td>


+ 2
- 2
manual/Tasks/concat.html View File

@@ -110,8 +110,8 @@ Resource Collection</a>s are used to
<td valign="top">encoding</td>
<td valign="top">
Specifies the encoding for the input files. Please see <a
href="http://download.oracle.com/javase/1.5.0/docs/guide/intl/encoding.doc.html">
http://download.oracle.com/javase/1.5.0/docs/guide/intl/encoding.doc.html</a>
href="http://docs.oracle.com/javase/7/docs/technotes/guides/intl/encoding.doc.html">
Supported Encodings</a>
for a list of possible values. Defaults to the platform's
default character encoding.
</td>


+ 3
- 3
manual/Tasks/ear.html View File

@@ -147,7 +147,7 @@ to a value other than its default, <code>&quot;add&quot;</code>.</b></p>
<tr>
<td valign="top">index</td>
<td valign="top">whether to create an <A
HREF="http://download.oracle.com/javase/1.5.0/docs/guide/jar/jar.html#JAR%20Index">index
HREF="http://docs.oracle.com/javase/7/docs/technotes/guides/jar/jar.html#JAR_Index">index
list</A> to speed up classloading. This is a JDK 1.3+ specific
feature. Unless you specify additional jars with nested <a
href="jar.html#indexjars"><code>indexjars</code></a> elements, only the
@@ -160,9 +160,9 @@ to a value other than its default, <code>&quot;add&quot;</code>.</b></p>
<td valign="top">whether to include META-INF and its children in
the index. Doesn't have any effect if <em>index</em> is
false.<br/>
Sun's jar implementation used to skip the META-INF directory and
Oracle's jar implementation used to skip the META-INF directory and
Ant followed that example. The behavior has been changed with
<a href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4408526">Java
<a href="https://bugs.openjdk.java.net/browse/JDK-4408526">Java
5</a>. In order to avoid problems with Ant generated jars on
Java 1.4 or earlier Ant will not include META-INF unless
explicitly asked to.<br/>


+ 1
- 1
manual/Tasks/echo.html View File

@@ -62,7 +62,7 @@ ignored</p>
<tr>
<td valign="top">append</td>
<td valign="top">Append to an existing file (or
<a href="http://download.oracle.com/javase/6/docs/api/java/io/FileWriter.html#FileWriter%28java.lang.String,%20boolean%29" target="_blank">
<a href="http://docs.oracle.com/javase/7/docs/api//java/io/FileWriter.html#FileWriter%28java.lang.String,%20boolean%29" target="_blank">
open a new file / overwrite an existing file</a>)? Default <i>false</i>.
</td>
<td valign="top" align="center">No; ignored unless <i>output</i> indicates a


+ 1
- 1
manual/Tasks/ejb.html View File

@@ -1294,7 +1294,7 @@ This step can be performed by the websphere element as part of the jar generatio
switch <code>ejbdeploy</code> is on, the ejbdeploy tool from the websphere toolset is called for
every ejb-jar. Unfortunately, this step only works, if you use the ibm jdk. Otherwise, the rmic
(called by ejbdeploy) throws a ClassFormatError. Be sure to switch ejbdeploy off, if run ant with
sun jdk.
Oracle JDK or OpenJDK.
</p>

<p>


+ 2
- 2
manual/Tasks/exec.html View File

@@ -88,8 +88,8 @@ running is a standard Windows executable and is not aware of the Cygwin
environment (i.e., doesn't load <code>cygwin1.dll</code>). The only
work-around for this is to compile a JVM under Cygwin (at your own risk).
See for instance
<a href="http://java.sun.com/javase/6/docs/build/README-builds.html#cygwin">
sun jdk 6 build instructions for cygwin</a>.
<a href="http://hg.openjdk.java.net/jdk7/build/raw-file/tip/README-builds.html#cygwin">
OpenJDK build instructions for cygwin</a>.
</p>

<h4>OpenVMS Users</h4>


+ 3
- 3
manual/Tasks/ftp.html View File

@@ -303,7 +303,7 @@ try to set up a new connection.</p>
<tr>
<td valign="top">serverTimeZoneConfig</td>
<td valign="top">Specify as a Java
<a href="http://download.oracle.com/javase/6/docs/api/java/util/TimeZone.html">
<a href="http://docs.oracle.com/javase/7/docs/api//java/util/TimeZone.html">
TimeZone</a> identifier, (e.g. <code>GMT</code>, <code>America/Chicago</code> or
<code>Asia/Jakarta</code>) the timezone used by the server for timestamps. This
enables timestamp dependency checking even when the server is in a different
@@ -318,7 +318,7 @@ try to set up a new connection.</p>
<td valign="top">defaultDateFormatConfig</td>
<td valign="top">Specify in Java
<a href="http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html">
<a href="http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html">
SimpleDateFormat</a> notation, (e.g.
<code>yyyy-MM-dd</code>), the date format generally used by the FTP server
to parse dates. In some cases this will be the only date format used.
@@ -335,7 +335,7 @@ try to set up a new connection.</p>
<tr>
<td valign="top">recentDateFormatConfig</td>
<td valign="top">Specify in Java
<a href="http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html">
<a href="http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html">
SimpleDateFormat</a> notation,
(e.g. <code>MMM dd hh:mm</code>) the date format used by the FTP server
to parse dates less than a year old. If not specified (or specified as


+ 4
- 5
manual/Tasks/jarlib-available.html View File

@@ -33,11 +33,10 @@ If the extension is present then a property is set.</p>
works with extensions as defined by the "Optional Package" specification.
For more information about optional packages, see the document
<em>Optional Package Versioning</em> in the documentation bundle for your
Java2 Standard Edition package, in file
<code>guide/extensions/versioning.html</code> or online at
<a href="http://download.oracle.com/javase/1.3/docs/guide/extensions/versioning.html">
http://download.oracle.com/javase/1.3/docs/guide/extensions/versioning.html
<p>See the Extension and ExtensionSet documentation for further details</p>
Java Standard Edition package, in file
<code>guide/extensions/versioning.html</code> or the online
<a target="_blank" href="http://docs.oracle.com/javase/7/docs/technotes/guides/extensions/versioning.html">
Extension and ExtensionSet documentation</a> for further details</p>

<h3>Parameters</h3>
<table border="1" cellpadding="2" cellspacing="0">


+ 4
- 5
manual/Tasks/jarlib-display.html View File

@@ -33,11 +33,10 @@
works with extensions as defined by the "Optional Package" specification.
For more information about optional packages, see the document
<em>Optional Package Versioning</em> in the documentation bundle for your
Java2 Standard Edition package, in file
<code>guide/extensions/versioning.html</code> or online at
<a href="http://download.oracle.com/javase/1.3/docs/guide/extensions/versioning.html">
http://download.oracle.com/javase/1.3/docs/guide/extensions/versioning.html
<p>See the Extension and ExtensionSet documentation for further details</p>
Java Standard Edition package, in file
<code>guide/extensions/versioning.html</code> or the online
<a target="_blank" href="http://docs.oracle.com/javase/7/docs/technotes/guides/extensions/versioning.html">
Extension and ExtensionSet documentation</a> for further details</p>

<h3>Parameters</h3>
<table border="1" cellpadding="2" cellspacing="0">


+ 4
- 5
manual/Tasks/jarlib-manifest.html View File

@@ -35,11 +35,10 @@
works with extensions as defined by the "Optional Package" specification.
For more information about optional packages, see the document
<em>Optional Package Versioning</em> in the documentation bundle for your
Java2 Standard Edition package, in file
<code>guide/extensions/versioning.html</code> or online at
<a href="http://download.oracle.com/javase/1.3/docs/guide/extensions/versioning.html">
http://download.oracle.com/javase/1.3/docs/guide/extensions/versioning.html
<p>See the Extension and ExtensionSet documentation for further details</p>
Java Standard Edition package, in file
<code>guide/extensions/versioning.html</code> or the online
<a target="_blank" href="http://docs.oracle.com/javase/7/docs/technotes/guides/extensions/versioning.html">
Extension and ExtensionSet documentation</a> for further details</p>

<h3>Parameters</h3>
<table border="1" cellpadding="2" cellspacing="0">


+ 3
- 4
manual/Tasks/jarlib-resolve.html View File

@@ -39,10 +39,9 @@ works with extensions as defined by the "Optional Package" specification.
For more information about optional packages, see the document
<em>Optional Package Versioning</em> in the documentation bundle for your
Java2 Standard Edition package, in file
<code>guide/extensions/versioning.html</code> or online at
<a href="http://download.oracle.com/javase/1.3/docs/guide/extensions/versioning.html">
http://download.oracle.com/javase/1.3/docs/guide/extensions/versioning.html
<p>See the Extension and ExtensionSet documentation for further details</p>
<code>guide/extensions/versioning.html</code> or the online
<a target="_blank" href="http://docs.oracle.com/javase/7/docs/technotes/guides/extensions/versioning.html">
Extension and ExtensionSet documentation</a> for further details</p>

<h3>Parameters</h3>
<table border="1" cellpadding="2" cellspacing="0">


+ 1
- 1
manual/Tasks/java.html View File

@@ -321,7 +321,7 @@ task is run. If you need to locate a JAR file relative to the directory
the task will be run in, you need to explicitly create the full path
to the JAR file.</p>
<p>When using the <tt>jar</tt> attribute, all classpath settings are
ignored according to <a href="http://download.oracle.com/javase/1.5.0/docs/tooldocs/windows/java.html#-jar">Sun's
ignored according to <a href="http://docs.oracle.com/javase/7/docs/technotes/tools/windows/java.html">Oracle's
specification</a>.




+ 12
- 12
manual/Tasks/javadoc.html View File

@@ -61,7 +61,7 @@ to ensure that this command supports the attributes you wish to use.</p>

<p><b>Note:</b><br>When generating the JavaDocs for classes which contains annotations
you maybe get a <tt>java.lang.ClassCastException: com.sun.tools.javadoc.ClassDocImpl</tt>.
This is due <a href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6442982" target="_blank">bug-6442982</a>. The cause is that JavaDoc cannot find the implementations of used annotations.
This is due <a href="https://bugs.openjdk.java.net/browse/JDK-6442982" target="_blank">bug-6442982</a>. The cause is that JavaDoc cannot find the implementations of used annotations.
The workaround is providing the jars with these implementations (like JAXBs <tt>@XmlType</tt>, ...)
to &lt;javadoc&gt; using <tt>classpath</tt>, <tt>classpathref</tt> attributes or nested
&lt;classpath&gt; element.</p>
@@ -515,7 +515,7 @@ to &lt;javadoc&gt; using <tt>classpath</tt>, <tt>classpathref</tt> attributes or
order to mitigate CVE-2013-1571. Defaults to true. <em>Since Ant
1.9.2</em><br></td>
There is a frame injection attack possible in javadocs generated by Oracle
JDKs prior to Java7 Update 25. When this flag is set to true, Ant
JDKs prior to Java7 Update 25 (<a href="http://www.oracle.com/technetwork/java/javase/7u25-relnotes-1955741.html#jpi-upt" target="_blank">details</a>). When this flag is set to true, Ant
will check whether the docs are vulnerable and will try to fix them.
</td>
<td align="center" valign="top">1.4</td>
@@ -715,7 +715,7 @@ with text contents, and the packages may be listed with nested

<h4>doclet</h4>
<p>The doclet nested element is used to specify the
<a href="http://download.oracle.com/javase/1.4.2/docs/tooldocs/javadoc/overview.html">doclet</a>
<a href="http://docs.oracle.com/javase/7/docs/technotes/guides/javadoc/doclet/overview.html">doclet</a>
that javadoc will use to process the input source files. A number of the standard javadoc arguments
are actually arguments of the standard doclet. If these are specified in the javadoc
task's attributes, they will be passed to the doclet specified in the
@@ -779,7 +779,7 @@ not set the description attribute for those tags.</p>
<td valign="top">If this attribute is specified, this element will behave as an implicit
<a href="../Types/fileset.html">fileset</a>. The files included by this fileset should
contain each tag definition on a separate line, as described in the
<a href="http://download.oracle.com/javase/1.4.2/docs/tooldocs/windows/javadoc.html#tag">Javadoc reference guide</a>:
<a href="http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javadoc.html#javadoctags">Javadoc reference guide</a>:
<pre>ejb.bean:t:XDoclet EJB Tag
todo:a:To Do</pre>
<b>Note:</b> The Javadoc reference quide has double quotes around
@@ -796,7 +796,7 @@ the javadoc program.

<h4><a name="tagletelement">taglet</a></h4>
<p>The taglet nested element is used to specify custom
<a href="http://download.oracle.com/javase/1.4.2/docs/tooldocs/javadoc/taglet/overview.html">taglets</a>.</p>
<a href="http://docs.oracle.com/javase/7/docs/technotes/guides/javadoc/taglet/overview.html">taglets</a> beyond <a href="http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javadoc.html#javadoctags" target="_blank">the default taglets</a>.</p>

<h5>Parameters</h5>
<table width="90%" border="1" cellpadding="2" cellspacing="0">
@@ -808,7 +808,7 @@ the javadoc program.
<tr>
<td valign="top">name</td>
<td valign="top">The name of the taglet class
(e.g. <a href="http://download.oracle.com/javase/1.4.2/docs/tooldocs/javadoc/taglet/ToDoTaglet.java">
(e.g. <a href="http://docs.oracle.com/javase/7/docs/technotes/guides/javadoc/taglet/ToDoTaglet.java">
<code>com.sun.tools.doclets.ToDoTaglet</code></a>)</td>
<td align="center" valign="top">Yes</td>
</tr>
@@ -849,8 +849,8 @@ arguments</a>. <em>Since Ant 1.6</em></p>
&lt;tag name=&quot;todo&quot; scope=&quot;all&quot; description=&quot;To do:&quot;/&gt;
&lt;group title=&quot;Group 1 Packages&quot; packages=&quot;com.dummy.test.a*&quot;/&gt;
&lt;group title=&quot;Group 2 Packages&quot; packages=&quot;com.dummy.test.b*:com.dummy.test.c*&quot;/&gt;
&lt;link offline=&quot;true&quot; href=&quot;http://download.oracle.com/javase/6/docs/api/&quot; packagelistLoc=&quot;C:\tmp&quot;/&gt;
&lt;link href=&quot;http://developer.java.sun.com/developer/products/xml/docs/api/&quot;/&gt;
&lt;link offline=&quot;true&quot; href=&quot;http://docs.oracle.com/javase/7/docs/api/&quot; packagelistLoc=&quot;C:\tmp&quot;/&gt;
&lt;link href=&quot;http://docs.oracle.com/javase/7/docs/api/&quot;/&gt;
&lt/javadoc&gt;</pre>

<p>is the same as</p>
@@ -872,8 +872,8 @@ arguments</a>. <em>Since Ant 1.6</em></p>
&lt;tag name=&quot;todo&quot; scope=&quot;all&quot; description=&quot;To do:&quot;/&gt;
&lt;group title=&quot;Group 1 Packages&quot; packages=&quot;com.dummy.test.a*&quot;/&gt;
&lt;group title=&quot;Group 2 Packages&quot; packages=&quot;com.dummy.test.b*:com.dummy.test.c*&quot;/&gt;
&lt;link offline=&quot;true&quot; href=&quot;http://download.oracle.com/javase/6/docs/api/&quot; packagelistLoc=&quot;C:\tmp&quot;/&gt;
&lt;link href=&quot;http://developer.java.sun.com/developer/products/xml/docs/api/&quot;/&gt;
&lt;link offline=&quot;true&quot; href=&quot;http://docs.oracle.com/javase/7/docs/api/&quot; packagelistLoc=&quot;C:\tmp&quot;/&gt;
&lt;link href=&quot;http://docs.oracle.com/javase/7/docs/api/&quot;/&gt;
&lt/javadoc&gt;</pre>

<p>or</p>
@@ -895,8 +895,8 @@ arguments</a>. <em>Since Ant 1.6</em></p>
&lt;tag name=&quot;todo&quot; scope=&quot;all&quot; description=&quot;To do:&quot;/&gt;
&lt;group title=&quot;Group 1 Packages&quot; packages=&quot;com.dummy.test.a*&quot;/&gt;
&lt;group title=&quot;Group 2 Packages&quot; packages=&quot;com.dummy.test.b*:com.dummy.test.c*&quot;/&gt;
&lt;link offline=&quot;true&quot; href=&quot;http://download.oracle.com/javase/6/docs/api/&quot; packagelistLoc=&quot;C:\tmp&quot;/&gt;
&lt;link href=&quot;http://developer.java.sun.com/developer/products/xml/docs/api/&quot;/&gt;
&lt;link offline=&quot;true&quot; href=&quot;http://docs.oracle.com/javase/7/docs/api/&quot; packagelistLoc=&quot;C:\tmp&quot;/&gt;
&lt;link href=&quot;http://docs.oracle.com/javase/7/docs/api/&quot;/&gt;
&lt/javadoc&gt;</pre>




+ 2
- 2
manual/Tasks/javah.html View File

@@ -29,8 +29,8 @@
<p>Generates JNI headers from a Java class.</p>
<p> When this task executes, it will generate the C header and source files that
are needed to implement native methods. JNI operates differently depending on
whether <a href="http://download.oracle.com/javase/1.3/docs/tooldocs/win32/javah.html">JDK1.2</a>
(or later) or <a href="http://java.sun.com/products/jdk/1.1/docs/tooldocs/win32/javah.html">pre-JDK1.2</a>
whether <a href="http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javah.html">JDK1.2+</a>
or <a href="http://java.sun.com/products/jdk/1.1/docs/tooldocs/win32/javah.html">pre-JDK1.2</a>
systems are used.</p>

<p>It is possible to use different compilers. This can be selected


+ 4
- 4
manual/Tasks/manifest.html View File

@@ -34,7 +34,7 @@ replacing or updating an existing file.</p>


<p>Manifests are processed according to the
<a href="http://download.oracle.com/javase/1.5.0/docs/guide/jar/jar.html">Jar
<a href="http://docs.oracle.com/javase/7/docs/technotes/guides/jar/jar.html">Jar
file specification.</a>. Specifically, a manifest element consists of
a set of attributes and sections. These sections in turn may contain
attributes. Note in particular that this may result in manifest lines
@@ -169,21 +169,21 @@ href="#attribute">attribute</a> elements into sections.</p>
attribute will take the value of the Ant property ${user.name}. The
same is true for the ${version} and ${TODAY} properties. This example
produces a MANIFEST.MF that contains
<a href="http://docs.oracle.com/javase/1.5.0/docs/guide/versioning/">package
<a href="http://docs.oracle.com/javase/7/docs/technotes/guides/versioning/spec/versioning2.html#wp90779">package
version identification</a> for the package <code>common</code>.</p>

<p>The manifest produced by the above would look like this:</p>

<pre><code>Manifest-Version: 1.0
Built-By: bodewig
Created-By: Apache Ant 1.7
Created-By: Apache Ant 1.9

Name: common
Specification-Title: Example
Specification-Vendor: Example Organization
Implementation-Vendor: Example Corp.
Specification-Version: 1.2
Implementation-Version: 1.2 February 19 2006
Implementation-Version: 1.2 September 10, 2013
Implementation-Title: common

Name: common/class1.class


+ 1
- 1
manual/Tasks/mimemail.html View File

@@ -31,7 +31,7 @@

<h3>Description</h3>
<p>Sends SMTP mail with MIME attachments.
<a href="http://www.oracle.com/technetwork/java/index-jsp-139225.html">JavaMail</a>
<a href="http://www.oracle.com/technetwork/java/index-138643.html">JavaMail</a>
and <a href="http://www.oracle.com/technetwork/java/javase/jaf-135115.html">Java
Activation Framework</a> are required for this task.</p>
<p>Multiple files can be attached using <a href="../Types/fileset.html">FileSets.</a></p>


+ 5
- 7
manual/Tasks/property.html View File

@@ -269,12 +269,10 @@ about this feature
<li>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.
<li>The rules for this format are laid down
<a href="http://download.oracle.com/javase/6/docs/api/java/util/Properties.html#load%28java.io.InputStream%29">by Sun</a>.
This makes it hard for Team Ant to field bug reports about it.
<li>Trailing spaces are not stripped. It may have been what you wanted.
<li>Want unusual characters? Escape them \u0456 or \&quot; style.
<li>Ant Properties are expanded in the file
<li>The rules for this format match <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Properties.html#load%28java.io.InputStream%29">java.util.Properties</a>.</li>
<li>Trailing spaces are not stripped. It may have been what you wanted.</li>
<li>Want unusual characters? Escape them \u0456 or \&quot; style.</li>
<li>Ant Properties are expanded in the file</li>
<li>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
@@ -294,7 +292,7 @@ deploy.url=http://${deploy.server}:${deploy.port}/
<a name="notes-env"></a>
<h3>Notes about environment variables</h3>
<p>
Ant runs on Java 1.2 therefore it cant use Java5 features for accessing environment
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. <br>
There are commands for the following operating systems implemented in


+ 1
- 1
manual/Tasks/sql.html View File

@@ -180,7 +180,7 @@ and <b>abort</b> execution and transaction and fail task.</p>
<td width="78%" valign="top">Control whether the Java statement
object will perform escape substitution.<br>
See <a
href="http://download.oracle.com/javase/6/docs/api/java/sql/Statement.html#setEscapeProcessing%28boolean%29">Statement's
href="http://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#setEscapeProcessing%28boolean%29">Statement's
API docs</a> for details. <em>Since Ant 1.6</em>.
<td width="10%" valign="top">No (default=true)</td>
</tr>


+ 3
- 3
manual/Tasks/tstamp.html View File

@@ -58,7 +58,7 @@ probably in an initialization target.</p>
The Tstamp task supports a <code>&lt;format&gt;</code> nested element that
allows a property to be set to the current date and time in a given format.
The date/time patterns are as defined in the Java
<a href="http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html">SimpleDateFormat</a> class.
<a href="http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html">SimpleDateFormat</a> class.
The format element also allows offsets to be applied to the time to generate different time values.
<br><br>
<table width="60%" border="1" cellpadding="2" cellspacing="0">
@@ -81,7 +81,7 @@ The format element also allows offsets to be applied to the time to generate dif
</tr>
<tr>
<td valign="top">timezone</td>
<td valign="top">The timezone to use for displaying time. The values are as defined by the Java <a href="http://download.oracle.com/javase/6/docs/api/java/util/TimeZone.html">TimeZone</a> class.</td>
<td valign="top">The timezone to use for displaying time. The values are as defined by the Java <a href="http://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html">TimeZone</a> class.</td>
<td align="center" valign="top">No</td>
</tr>
<tr>
@@ -112,7 +112,7 @@ The format element also allows offsets to be applied to the time to generate dif
form is &quot;language, country, variant&quot; but either variant or variant and
country may be omitted. For more information please refer to documentation
for the
<a href="http://download.oracle.com/javase/6/docs/api/java/util/Locale.html">Locale</a>
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Locale.html">Locale</a>
class.</td>
<td align="center" valign="top">No</td>
</tr>


+ 1
- 1
manual/Tasks/typedef.html View File

@@ -65,7 +65,7 @@
<p>If you are defining tasks or types that share the same classpath
with multiple taskdef or typedef tasks, the corresponding classes
will be loaded by different
Java <a href="http://download.oracle.com/javase/1.4.2/docs/api/java/lang/ClassLoader.html">ClassLoaders</a>.
Java <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/ClassLoader.html">ClassLoaders</a>.
Two classes with the same name loaded via different ClassLoaders
are not the same class from the point of view of the Java VM, they
don't share static variables and instances of these classes can't


+ 2
- 2
manual/Tasks/unzip.html View File

@@ -103,8 +103,8 @@ archive.</p>
<td valign="top"><b>Note:</b> This attribute is not available for
the <code>untar</code> task.<br>
The character encoding that has been used for filenames
inside the zip file. For a list of possible values see <a
href="http://download.oracle.com/javase/1.5.0/docs/guide/intl/encoding.doc.html">http://download.oracle.com/javase/1.5.0/docs/guide/intl/encoding.doc.html</a>.<br>
inside the zip file. For a list of possible values see the <a
href="http://docs.oracle.com/javase/7/docs/technotes/guides/intl/encoding.doc.html">Supported Encodings</a>.<br/>
Defaults to &quot;UTF8&quot;, use the magic value
<code>native-encoding</code> for the platform's default character
encoding.


+ 2
- 2
manual/Tasks/zip.html View File

@@ -148,8 +148,8 @@ archive.</p>
<tr>
<td valign="top">encoding</td>
<td valign="top">The character encoding to use for filenames
inside the zip file. For a list of possible values see <a
href="http://download.oracle.com/javase/1.5.0/docs/guide/intl/encoding.doc.html">http://download.oracle.com/javase/1.5.0/docs/guide/intl/encoding.doc.html</a>.
inside the zip file. For a list of possible values see the <a
href="http://docs.oracle.com/javase/7/docs/technotes/guides/intl/encoding.doc.html">Supported Encodings</a>.<br/>
Defaults to the platform's default character encoding.
<br/>See also the <a href="#encoding">discussion below</a></td>
<td align="center" valign="top">No</td>


+ 2
- 2
manual/Types/assertions.html View File

@@ -33,9 +33,9 @@ in <a href="../Tasks/java.html"><code>&lt;java&gt;</code></a> and

<p>
Assertions are covered in the
<a href="http://download.oracle.com/javase/1.4.2/docs/guide/lang/assert.html">J2SDK 1.4 documentation</a>,
<a href="http://docs.oracle.com/javase/7/docs/technotes/guides/language/assert.html">Java SE documentation</a>,
and the
<a href="http://java.sun.com/docs/books/jls/assert-spec.html">Java Language Specification</a>.
<a href="http://docs.oracle.com/javase/specs/jls/se7/html/jls-14.html#jls-14.10">Java Language Specification</a>.

<p>
The key points to note are that a <tt>java.lang.AssertionError</tt>


+ 3
- 3
manual/Types/extension.html View File

@@ -31,9 +31,9 @@ works with extensions as defined by the "Optional Package" specification.
For more information about optional packages, see the document
<em>Optional Package Versioning</em> in the documentation bundle for your
Java2 Standard Edition package, in file
<code>guide/extensions/versioning.html</code> or online at
<a href="http://download.oracle.com/javase/1.3/docs/guide/extensions/versioning.html">
http://download.oracle.com/javase/1.3/docs/guide/extensions/versioning.html.</p>
<code>guide/extensions/versioning.html</code> or the online
<a href="http://docs.oracle.com/javase/7/docs/technotes/guides/versioning/spec/versioning2.html#wp90779">
Package Versioning documentation.</p>

<h3>Attributes</h3>
<p>The extension type supports the following attributes</a>:


+ 2
- 2
manual/Types/extensionset.html View File

@@ -30,8 +30,8 @@ works with extensions as defined by the "Optional Package" specification.
<em>Optional Package Versioning</em> in the documentation bundle for your
Java2 Standard Edition package, in file
<code>guide/extensions/versioning.html</code> or online at
<a href="http://download.oracle.com/javase/1.3/docs/guide/extensions/versioning.html">
http://download.oracle.com/javase/1.3/docs/guide/extensions/versioning.html.</p>
<a href="http://docs.oracle.com/javase/7/docs/technotes/guides/versioning/spec/versioning2.html#wp90779">
Package Versioning documentation.</p>

<h3>Nested Elements</h3>



+ 1
- 1
manual/Types/regexp.html View File

@@ -58,7 +58,7 @@ Use the regular expression with id myregexp.
<p>
Apache Ant comes with
wrappers for
<a href="http://download.oracle.com/javase/6/docs/api/java/util/regex/package-summary.html" target="_top">the java.util.regex package</a>,
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/regex/package-summary.html" target="_top">the java.util.regex package</a>,
<a href="http://attic.apache.org/projects/jakarta-regexp.html" target="_top">jakarta-regexp</a>
and <a href="http://attic.apache.org/projects/jakarta-oro.html" target="_top">jakarta-ORO</a>,
See <a href="../install.html#librarydependencies">installation dependencies</a>


+ 2
- 2
manual/Types/zipfileset.html View File

@@ -92,8 +92,8 @@ directories. Default is 755. <em>since Ant 1.5.2</em>.</td>
<tr>
<td valign="top">encoding</td>
<td valign="top">The character encoding to use for filenames
inside the zip file. For a list of possible values see <a
href="http://download.oracle.com/javase/1.5.0/docs/guide/intl/encoding.doc.html">http://download.oracle.com/javase/1.5.0/docs/guide/intl/encoding.doc.html</a>.
inside the zip file. For a list of possible values see the <a
href="http://docs.oracle.com/javase/7/docs/technotes/guides/intl/encoding.doc.html">Supported Encodings</a>.
Defaults to the platform's default character encoding.
<b>Only supported by zipfileset.</b></td>
<td align="center" valign="top">No</td>


+ 16
- 17
manual/install.html View File

@@ -238,8 +238,8 @@ that tend to work best. As of Ant1.7, Windows 9x is no longer supported.

<p>
For the current version of Ant, you will also need a JDK installed on
your system, version 1.4 or later required, 1.5 or later strongly recommended.
The later the version of Java , the more Ant tasks you get.
your system, version 1.4 or later required, 1.7 or later strongly recommended.
The more up-to-date the version of Java , the more Ant tasks you get.
</p>
<p>
<strong>Note: </strong>If a JDK is not present, only the JRE runtime, then many tasks will not work.
@@ -252,10 +252,9 @@ The later the version of Java , the more Ant tasks you get.

<h3>Open Source Java Runtimes</h3>
<p>
The Ant team strongly supports users running Ant on Kaffe and other
The Ant team strongly supports users running Ant on <a target="_blank" href="http://openjdk.java.net/">OpenJDK</a> and other
open source Java runtimes, and so strives to have a product that works
well on those platforms. What appears to work well is Kaffe with
Gnu Classpath and the Xerces and Xalan libraries.
well on those platforms.
</p>
<hr>
<h2><a name="installing">Installing Ant</a></h2>
@@ -369,7 +368,7 @@ Build failed
So Ant works. This message is there because you need to write an individual buildfile for your
project. With a <tt>ant -version</tt> you should get an output like
<pre>
Apache Ant version 1.7.1 compiled on June 27 2008
Apache Ant(TM) version 1.9.2 compiled on July 8 2013
</pre>
</p>
<p>If this does not work ensure your environment variables are set right. They must resolve to:
@@ -448,7 +447,7 @@ libraries must be added to Ant's classpath, in any of the following ways:

<blockquote>
<pre>ant -f fetch.xml -Ddest=<i>[option]</i></pre>
</blockquote
</blockquote>

<p>
where option is one of the following, as described above:
@@ -552,10 +551,10 @@ this. </p>

<ul>

<li><b>With Java1.5</b><br>
<li><b>With Java1.5 or above</b><br>

<p>
When you run Ant on Java1.5, you could try to use the automatic proxy setup
When you run Ant on Java1.5 or above, you could try to use the automatic proxy setup
mechanism with <code>-autoproxy</code>.
</p>

@@ -563,8 +562,8 @@ mechanism with <code>-autoproxy</code>.

<li><b>With explicit JVM properties.</b><br>
<p>
These are documented <a
href="http://download.oracle.com/javase/1.5.0/docs/guide/net/properties.html" target="_top">by Oracle</a>,
These are documented in <a
href="http://docs.oracle.com/javase/7/docs/technotes/guides/net/properties.html" target="_top">Java's Networking Properties</a>,
and control the proxy behaviour of the entire JVM. To set them in Ant, declare
them in the <code>ANT_OPTS</code> environment variable. This is the best option
for a non-mobile system. For a laptop, you have to change these settings as you
@@ -629,19 +628,19 @@ configuring the JVM properties until they are happy. </p>
<p>Assume Ant is installed in <code>c:\ant\</code>. The following sets up the
environment:</p>
<pre>set ANT_HOME=c:\ant
set JAVA_HOME=c:\jdk-1.5.0.05
set JAVA_HOME=c:\jdk1.7.0_51
set PATH=%PATH%;%ANT_HOME%\bin</pre>

<h3><a name="bash">Linux/Unix (bash)</a></h3>
<p>Assume Ant is installed in <code>/usr/local/ant</code>. The following sets up
the environment:</p>
<pre>export ANT_HOME=/usr/local/ant
export JAVA_HOME=/usr/local/jdk-1.5.0.05
export JAVA_HOME=/usr/local/jdk1.7.0_51
export PATH=${PATH}:${ANT_HOME}/bin</pre>

<h3><a name="tcshcsh">Linux/Unix (csh)</a></h3>
<pre>setenv ANT_HOME /usr/local/ant
setenv JAVA_HOME /usr/local/jdk/jdk-1.5.0.05
setenv JAVA_HOME /usr/local/jdk/jdk1.7.0_51
set path=( $path $ANT_HOME/bin )</pre>

<p>
@@ -732,7 +731,7 @@ See <a href="#installing">Installing Ant</a>
for examples on how to do this for your operating system. </p>

<p><b>Note</b>: The bootstrap process of Ant requires a greedy
compiler like Sun's javac or jikes. It does not work with gcj or
compiler like OpenJDK or Oracle's javac. It does not work with gcj or
kjc.</p>

<p>Make sure you have downloaded any auxiliary jars required to
@@ -986,8 +985,8 @@ you need jakarta-oro 2.0.8 or later, and <a href="#commons-net">commons-net</a><
<tr>
<td>mail.jar</td>
<td>Mail task with Mime encoding, and the MimeMail task</td>
<td><a href="http://www.oracle.com/technetwork/java/index-jsp-139225.html"
target="_top">http://www.oracle.com/technetwork/java/index-jsp-139225.html</a></td>
<td><a href="http://www.oracle.com/technetwork/java/index-138643.html"
target="_top">http://www.oracle.com/technetwork/java/index-138643.html</a></td>
</tr>
<tr>
<td>activation.jar</td>


+ 3
- 3
manual/properties.html View File

@@ -57,7 +57,7 @@
example, <code>${os.name}</code> expands to the name of the
operating system.</p>
<p>For a list of system properties see
<a href="http://download.oracle.com/javase/6/docs/api/java/lang/System.html#getProperties%28%29">the Javadoc of System.getProperties</a>.
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/System.html#getProperties%28%29">the Javadoc of System.getProperties</a>.
</p>

<p>In addition, Ant has some built-in properties:</p>
@@ -78,8 +78,8 @@ ant.project.invoked-targets
an &lt;ant&gt; task ...) when invoking the current
project.
ant.java.version the JVM version Ant detected; currently it can hold
the values &quot;1.2&quot;, &quot;1.3&quot;,
&quot;1.4&quot;, &quot;1.5&quot; and &quot;1.6&quot;.
the values &quot;1.7&quot;, &quot;1.6&quot;, &quot;1.5&quot;,
&quot;1.4&quot;, &quot;1.3&quot; and &quot;1.2&quot;.
ant.core.lib the absolute path of the <code>ant.jar</code> file.
</pre>



+ 3
- 6
manual/proxy.html View File

@@ -87,8 +87,7 @@ proxy configuration.

<h4>How Autoproxy works</h4>
<p>
We are grateful for some input from Sun as to how the proxy code works under
Java 1.5 and up. The <code>java.net.useSystemProxies</code> is checked only
The <code>java.net.useSystemProxies</code> is checked only
once, at startup time, the other checks (registry, gconf, system properties) are done
dynamically whenever needed (socket connection, URL connection etc..).
</p>
@@ -284,10 +283,8 @@ use one of the alternate mechanisms to configure the JVM.
<h4>Further reading</h4>

<ul>
<li><a href="http://download.oracle.com/javase/1.5.0/docs/guide/net/properties.html">
Java Networking Properties</a>. Notice how not all proxy settings are documented
there.
<li><a href="http://blogs.sun.com/roller/resources/jcc/Proxies.pdf">Proxies</a>
<li><a href="http://docs.oracle.com/javase/7/docs/technotes/guides/net/properties.html">
Java Networking Properties</a>.
</li>
</ul>



+ 2
- 3
manual/running.html View File

@@ -425,7 +425,7 @@ org.apache.tools.ant.Executor implementation specified here.
<td>name of a supported character set (e.g. UTF-8, ISO-8859-1, US-ASCII)</td>
<td>use as default character set of email messages; use as default for source-, dest- and bundleencoding
in <a href="Tasks/translate.html">translate</a> <br>
see JavaDoc of <a target="_blank" href="http://download.oracle.com/javase/6/docs/api/java/nio/charset/Charset.html">java.nio.charset.Charset</a>
see JavaDoc of <a target="_blank" href="http://docs.oracle.com/javase/7/docs/api/java/nio/charset/Charset.html">java.nio.charset.Charset</a>
for more information about character sets (not used in Ant, but has nice docs).
</td>
</tr>
@@ -602,8 +602,7 @@ Here is an example:
failonerror="true"
dir="${sub.builddir}"
timeout="4000000"
taskname="startAnt"
&gt;
taskname="startAnt"&gt;
&lt;classpath&gt;
&lt;pathelement location="${ant.home}/lib/ant-launcher.jar"/&gt;
&lt;/classpath&gt;


+ 5
- 1
src/etc/testcases/taskdefs/get.xml View File

@@ -39,7 +39,7 @@
</target>

<target name="test6">
<get src="http://www.apache.org/" dest="get.tmp"/>
<get src="http://www.apache.org/" dest="get.tmp" userAgent="Apache Ant/test"/>

<fileset id="t6" file="get.tmp" />
<pathconvert property="t6" refid="t6" setonempty="false" />
@@ -53,6 +53,10 @@
</fail>
</target>

<target name="test7">
<get src="" dest="" userAgent=""/>
</target>

<target name="testUseTimestamp" depends="-90s,-timestamp" />

<target name="-90s">


+ 24
- 3
src/main/org/apache/tools/ant/taskdefs/Get.java View File

@@ -31,6 +31,7 @@ import java.net.URLConnection;
import java.util.Date;

import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Main;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.Task;
import org.apache.tools.ant.types.Mapper;
@@ -65,6 +66,8 @@ public class Get extends Task {
private static final String HTTP = "http";
private static final String HTTPS = "https";

private static final String DEFAULT_AGENT_PREFIX = "Apache Ant";

private Resources sources = new Resources();
private File destination; // required
private boolean verbose = false;
@@ -77,6 +80,7 @@ public class Get extends Task {
private boolean skipExisting = false;
private boolean httpUseCaches = true; // on by default
private Mapper mapperElement = null;
private String userAgent = System.getProperty("http.agent", DEFAULT_AGENT_PREFIX + "/" + Main.getAntVersion());

/**
* Does the work.
@@ -216,7 +220,7 @@ public class Get extends Task {

GetThread getThread = new GetThread(source, dest,
hasTimestamp, timestamp, progress,
logLevel);
logLevel, userAgent);
getThread.setDaemon(true);
getProject().registerThreadTask(getThread, this);
getThread.start();
@@ -247,6 +251,11 @@ public class Get extends Task {
* Check the attributes.
*/
private void checkAttributes() {

if (userAgent == null || userAgent.trim().length() == 0) {
throw new BuildException("userAgent may not be null or empty");
}

if (sources.size() == 0) {
throw new BuildException("at least one source is required",
getLocation());
@@ -411,6 +420,16 @@ public class Get extends Task {
public void setHttpUseCaches(boolean httpUseCache) {
this.httpUseCaches = httpUseCache;
}
/**
* HTTP connections only - set the user-agent to be used
* when communicating with remote server. if null, then
* the value is considered unset and the behaviour falls
* back to the default of the http API.
*/
public void setUserAgent(String userAgent) {
this.userAgent = userAgent;
}

/**
* Define the mapper to map source to destination files.
@@ -553,15 +572,17 @@ public class Get extends Task {
private OutputStream os = null;
private URLConnection connection;
private int redirections = 0;

private String userAgent = null;
GetThread(URL source, File dest,
boolean h, long t, DownloadProgress p, int l) {
boolean h, long t, DownloadProgress p, int l, String userAgent) {
this.source = source;
this.dest = dest;
hasTimestamp = h;
timestamp = t;
progress = p;
logLevel = l;
this.userAgent = userAgent;
}

public void run() {


+ 4
- 0
src/tests/junit/org/apache/tools/ant/taskdefs/GetTest.java View File

@@ -60,6 +60,10 @@ public class GetTest extends BuildFileTest {
executeTarget("test6");
}

public void test7() {
expectBuildException("test7", "userAgent may not be null or empty");
}

public void testUseTimestamp() {
executeTarget("testUseTimestamp");
}


Loading…
Cancel
Save