* Ant 1.10 requires jdk 8 doc update * Updated the manual to reflect ant requires JDK 8 +master
| @@ -143,8 +143,7 @@ attribute to a value other than its default, <q>add</q>.</strong></p> | |||||
| <td>index</td> | <td>index</td> | ||||
| <td>whether to create | <td>whether to create | ||||
| an <a href="https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jar.html#JAR_Index" | an <a href="https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jar.html#JAR_Index" | ||||
| target="_top">index list</a> to speed up classloading. This is a JDK 1.3+ specific feature. | |||||
| Unless you specify additional jars with | |||||
| target="_top">index list</a> to speed up classloading. Unless you specify additional jars with | |||||
| nested <a href="jar.html#indexjars"><code>indexjars</code></a> elements, only the contents of | nested <a href="jar.html#indexjars"><code>indexjars</code></a> elements, only the contents of | ||||
| this jar will be included in the index.</td> | this jar will be included in the index.</td> | ||||
| <td>No; defaults to <q>false</q></td> | <td>No; defaults to <q>false</q></td> | ||||
| @@ -90,9 +90,6 @@ executed exactly as specified inside a temporary DCL script. This has some impl | |||||
| an <q>@</q>-sign (e.g. <var>executable</var>=<q>@[FOO]BAR.COM</q>), just as you would in a DCL | an <q>@</q>-sign (e.g. <var>executable</var>=<q>@[FOO]BAR.COM</q>), just as you would in a DCL | ||||
| script</li> | script</li> | ||||
| </ul> | </ul> | ||||
| <p>For <code><exec></code> to work in an environment with a JVM older than version 1.4.1-2 it | |||||
| is also <em>required</em> that the logical <code>JAVA$FORK_SUPPORT_CHDIR</code> is set | |||||
| to <code>TRUE</code> in the job table (see the <em>JDK Release Notes</em>).</p> | |||||
| <p>Please note that JVM provided by HP doesn't follow OpenVMS' conventions of exit codes. If you | <p>Please note that JVM provided by HP doesn't follow OpenVMS' conventions of exit codes. If you | ||||
| run a JVM with this task, the task may falsely claim that an error occurred (or silently ignore an | run a JVM with this task, the task may falsely claim that an error occurred (or silently ignore an | ||||
| @@ -202,7 +202,7 @@ e.g. decreasing the size by deleting 'same' classes from the versions-branches, | |||||
| <td>index</td> | <td>index</td> | ||||
| <td>whether to create | <td>whether to create | ||||
| an <a href="https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jar.html#JAR_Index" | an <a href="https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jar.html#JAR_Index" | ||||
| target="_top">index list</a> to speed up classloading. This is a JDK 1.3+ specific feature. | |||||
| target="_top">index list</a> to speed up classloading. | |||||
| Unless you specify additional jars with nested <a href="#indexjars"><code>indexjars</code></a> | Unless you specify additional jars with nested <a href="#indexjars"><code>indexjars</code></a> | ||||
| elements, only the contents of this jar will be included in the index.</td> | elements, only the contents of this jar will be included in the index.</td> | ||||
| <td>No; defaults to <q>false</q></td> | <td>No; defaults to <q>false</q></td> | ||||
| @@ -508,7 +508,7 @@ Sealed: false</pre> | |||||
| <h4>Service Provider</h4> | <h4>Service Provider</h4> | ||||
| <p>The following shows how to create a jar file specifying a service with an implementation of the | <p>The following shows how to create a jar file specifying a service with an implementation of the | ||||
| JDK 6 scripting interface:</p> | |||||
| scripting interface:</p> | |||||
| <pre> | <pre> | ||||
| <jar destfile="pinky.jar"> | <jar destfile="pinky.jar"> | ||||
| <fileset dir="build/classes"/> | <fileset dir="build/classes"/> | ||||
| @@ -517,7 +517,7 @@ JDK 6 scripting interface:</p> | |||||
| </jar></pre> | </jar></pre> | ||||
| <p>The following shows how to create a jar file specifying a service with two implementations of the | <p>The following shows how to create a jar file specifying a service with two implementations of the | ||||
| JDK 6 scripting interface:</p> | |||||
| scripting interface:</p> | |||||
| <pre> | <pre> | ||||
| <jar destfile="pinkyandbrain.jar"> | <jar destfile="pinkyandbrain.jar"> | ||||
| <fileset dir="classes"/> | <fileset dir="classes"/> | ||||
| @@ -73,7 +73,7 @@ for either the <code>build.compiler</code> property or the <var>compiler</var> a | |||||
| <li><q>sj</q> (Symantec Java compiler) – <q>symantec</q> can be used as an alias.</li> | <li><q>sj</q> (Symantec Java compiler) – <q>symantec</q> can be used as an alias.</li> | ||||
| <li><q>extJavac</q> (run either modern or classic in a JVM of its own).</li> | <li><q>extJavac</q> (run either modern or classic in a JVM of its own).</li> | ||||
| </ul> | </ul> | ||||
| <p>The default is <q>javac1.x</q> with <q>x</q> depending on the JDK version you use while you are | |||||
| <p>The default is <q>javacX</q> with <q>X</q> depending on the JDK version you use while you are | |||||
| running Ant. If you wish to use a different compiler interface than those supplied, you can write a | running Ant. If you wish to use a different compiler interface than those supplied, you can write a | ||||
| class that implements the CompilerAdapter interface | class that implements the CompilerAdapter interface | ||||
| (package <code>org.apache.tools.ant.taskdefs.compilers</code>). Supply the full classname in | (package <code>org.apache.tools.ant.taskdefs.compilers</code>). Supply the full classname in | ||||
| @@ -93,7 +93,7 @@ it passes to the compiler.</p> | |||||
| locks up the files present in the classpath of the <code><javac></code> task, and does not | locks up the files present in the classpath of the <code><javac></code> task, and does not | ||||
| release them. The side effect of this is that you will not be able to delete or move those files | release them. The side effect of this is that you will not be able to delete or move those files | ||||
| later on in the build. The workaround is to fork when invoking the compiler.</p> | later on in the build. The workaround is to fork when invoking the compiler.</p> | ||||
| <p>If you are using Java 8 or above and your source contains native methods or fields annotated with | |||||
| <p>If your source contains native methods or fields annotated with | |||||
| the <code>@Native</code> annotation you can set the <var>nativeheaderdir</var> attribute in order to | the <code>@Native</code> annotation you can set the <var>nativeheaderdir</var> attribute in order to | ||||
| use the <kbd>-h</kbd> switch of <kbd>javac</kbd> to generate the native header files. Note that | use the <kbd>-h</kbd> switch of <kbd>javac</kbd> to generate the native header files. Note that | ||||
| the logic Ant uses to determine which files to compile does not take native headers into account, | the logic Ant uses to determine which files to compile does not take native headers into account, | ||||
| @@ -404,14 +404,14 @@ file will not get compiled even if a native header file generated for it would b | |||||
| <tr> | <tr> | ||||
| <td>nativeheaderdir</td> | <td>nativeheaderdir</td> | ||||
| <td>Specify where to place generated native header files. <em>Since Ant 1.9.8</em>. | <td>Specify where to place generated native header files. <em>Since Ant 1.9.8</em>. | ||||
| <td>No, ignored when running on JDK 7 or earlier</td> | |||||
| <td>No, ignored when compiling on JDK 7 or earlier</td> | |||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>release</td> | <td>release</td> | ||||
| <td>Specify the value for the <kbd>--release</kbd> switch.<br/>When set and running on JDK 9+ | <td>Specify the value for the <kbd>--release</kbd> switch.<br/>When set and running on JDK 9+ | ||||
| the <var>source</var> and <var>target</var> attributes as well as the <var>bootclasspath</var> | the <var>source</var> and <var>target</var> attributes as well as the <var>bootclasspath</var> | ||||
| will be ignored. <em>Since Ant 1.9.8</em>. | will be ignored. <em>Since Ant 1.9.8</em>. | ||||
| <td>No, ignored when running on JDK 8 or earlier</td> | |||||
| <td>No, ignored when compiling on JDK 8 or earlier</td> | |||||
| </tr> | </tr> | ||||
| </table> | </table> | ||||
| @@ -591,10 +591,6 @@ log, that these settings are fix.</p> | |||||
| fork="true" | fork="true" | ||||
| taskname="javac1.4"/></pre> | taskname="javac1.4"/></pre> | ||||
| <p><strong>Note</strong>: If you are using Ant on Windows and a new DOS window pops up for every use | |||||
| of an external compiler, this may be a problem of the JDK you are using. This problem may occur | |||||
| with all JDKs prior to 1.2.</p> | |||||
| <p>If you want to activate other compiler options like <code>lint</code> you could use | <p>If you want to activate other compiler options like <code>lint</code> you could use | ||||
| the <code><compilerarg></code> element:</p> | the <code><compilerarg></code> element:</p> | ||||
| <pre> | <pre> | ||||
| @@ -50,12 +50,6 @@ listed in <var>packagelist</var> are not checked, so the task performs even if s | |||||
| missing or broken. Use this option if you wish to convert from an existing makefile. Once things are | missing or broken. Use this option if you wish to convert from an existing makefile. Once things are | ||||
| running you should then switch to the regular notation.</p> | running you should then switch to the regular notation.</p> | ||||
| <p>In the table below, 1.2 means available if your current JVM is exactly of version 1.2 (not 1.3 or | |||||
| later), 1.4+ for any JVM of at least version 1.4, otherwise any JVM of at least version 1.2 is | |||||
| acceptable. <em>JDKs prior to 1.4 are no longer supported.</em> If you specify | |||||
| the <var>executable</var> attribute it is up to you to ensure that this command supports the | |||||
| attributes you wish to use.</p> | |||||
| <p><strong>Note</strong>: When generating the JavaDocs for classes which contains annotations you | <p><strong>Note</strong>: When generating the JavaDocs for classes which contains annotations you | ||||
| maybe get a <code class="output">java.lang.ClassCastException: | maybe get a <code class="output">java.lang.ClassCastException: | ||||
| com.sun.tools.javadoc.ClassDocImpl</code>. This is | com.sun.tools.javadoc.ClassDocImpl</code>. This is | ||||
| @@ -82,13 +76,11 @@ with the <var>exclude</var> patterns of the <code>packageset</code> (and vice ve | |||||
| <tr> | <tr> | ||||
| <th scope="col">Attribute</th> | <th scope="col">Attribute</th> | ||||
| <th scope="col">Description</th> | <th scope="col">Description</th> | ||||
| <th scope="col">Availability on Java</th> | |||||
| <th scope="col">Required</th> | <th scope="col">Required</th> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>sourcepath</td> | <td>sourcepath</td> | ||||
| <td>Specify where to find source files</td> | <td>Specify where to find source files</td> | ||||
| <td>all</td> | |||||
| <td rowspan="4">At least one of the four or | <td rowspan="4">At least one of the four or | ||||
| nested <code><sourcepath></code>, <code><fileset></code>, | nested <code><sourcepath></code>, <code><fileset></code>, | ||||
| <code>module</code> or <code><packageset></code></td> | <code>module</code> or <code><packageset></code></td> | ||||
| @@ -97,62 +89,52 @@ with the <var>exclude</var> patterns of the <code>packageset</code> (and vice ve | |||||
| <td>sourcepathref</td> | <td>sourcepathref</td> | ||||
| <td>Specify where to find source files by <a href="../using.html#references">reference</a> to a | <td>Specify where to find source files by <a href="../using.html#references">reference</a> to a | ||||
| <var>sourcepath</var> defined elsewhere.</td> | <var>sourcepath</var> defined elsewhere.</td> | ||||
| <td class="left">all</td> | |||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>sourcefiles</td> | <td>sourcefiles</td> | ||||
| <td>Comma separated list of source files—see also the nested <code>source</code> | <td>Comma separated list of source files—see also the nested <code>source</code> | ||||
| element.</td> | element.</td> | ||||
| <td class="left">all</td> | |||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>modulenames</td> | <td>modulenames</td> | ||||
| <td>Comma separated list of module names -- see also | <td>Comma separated list of module names -- see also | ||||
| the nested <code>module</code> element. <em>since Ant 1.10.6</em></td> | the nested <code>module</code> element. <em>since Ant 1.10.6</em></td> | ||||
| <td>all</td> | |||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>destdir</td> | <td>destdir</td> | ||||
| <td>Destination directory for output files</td> | <td>Destination directory for output files</td> | ||||
| <td>all</td> | |||||
| <td>Yes, unless a <var>doclet</var> has been specified.</td> | <td>Yes, unless a <var>doclet</var> has been specified.</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>maxmemory</td> | <td>maxmemory</td> | ||||
| <td>Max amount of memory to allocate to the <kbd>javadoc</kbd> JVM</td> | <td>Max amount of memory to allocate to the <kbd>javadoc</kbd> JVM</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>packagenames</td> | <td>packagenames</td> | ||||
| <td>Comma separated list of package files (with terminating wildcard)—see also the | <td>Comma separated list of package files (with terminating wildcard)—see also the | ||||
| nested <code>package</code> element.</td> | nested <code>package</code> element.</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>packageList</td> | <td>packageList</td> | ||||
| <td>The name of a file containing the packages to process</td> | <td>The name of a file containing the packages to process</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>classpath</td> | <td>classpath</td> | ||||
| <td>Specify where to find user class files</td> | <td>Specify where to find user class files</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Bootclasspath</td> | <td>Bootclasspath</td> | ||||
| <td>Override location of class files loaded by the bootstrap class loader</td> | <td>Override location of class files loaded by the bootstrap class loader</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>classpathref</td> | <td>classpathref</td> | ||||
| <td>Specify where to find user class files by <a href="../using.html#references">reference</a> | <td>Specify where to find user class files by <a href="../using.html#references">reference</a> | ||||
| to a <var>classpath</var> defined elsewhere.</td> | to a <var>classpath</var> defined elsewhere.</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| @@ -160,136 +142,114 @@ with the <var>exclude</var> patterns of the <code>packageset</code> (and vice ve | |||||
| <td>Override location of class files loaded by the bootstrap class loader | <td>Override location of class files loaded by the bootstrap class loader | ||||
| by <a href="../using.html#references">reference</a> to a <var>bootclasspath</var> defined | by <a href="../using.html#references">reference</a> to a <var>bootclasspath</var> defined | ||||
| elsewhere.</td> | elsewhere.</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Extdirs</td> | <td>Extdirs</td> | ||||
| <td>Override location of installed extensions</td> | <td>Override location of installed extensions</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Overview</td> | <td>Overview</td> | ||||
| <td>Read overview documentation from HTML file</td> | <td>Read overview documentation from HTML file</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>access</td> | <td>access</td> | ||||
| <td>Access mode: one of <q>public</q>, <q>protected</q>, <q>package</q>, or <q>private</q></td> | <td>Access mode: one of <q>public</q>, <q>protected</q>, <q>package</q>, or <q>private</q></td> | ||||
| <td>all</td> | |||||
| <td>No; default is <q>protected</q></td> | <td>No; default is <q>protected</q></td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Public</td> | <td>Public</td> | ||||
| <td>Show only public classes and members</td> | <td>Show only public classes and members</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Protected</td> | <td>Protected</td> | ||||
| <td>Show protected/public classes and members (default)</td> | <td>Show protected/public classes and members (default)</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Package</td> | <td>Package</td> | ||||
| <td>Show package/protected/public classes and members</td> | <td>Show package/protected/public classes and members</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Private</td> | <td>Private</td> | ||||
| <td>Show all classes and members</td> | <td>Show all classes and members</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Old</td> | <td>Old</td> | ||||
| <td>Generate output using JDK 1.1 emulating doclet.<br/><strong>Note</strong>: <em>Since Ant | |||||
| 1.8.0</em> this attribute has no effect because <kbd>javadoc</kbd> of Java 1.4 and later | |||||
| does not support the <kbd>-1.1</kbd> switch anymore.</td> | |||||
| <td>1.2</td> | |||||
| <td>Generate output using JDK 1.1 emulating doclet.<br/><strong>Note</strong>: | |||||
| This attribute has no effect unless you're using an pre jdk 1.4 external <kbd>javadoc</kbd> | |||||
| </td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Verbose</td> | <td>Verbose</td> | ||||
| <td>Output messages about what <kbd>javadoc</kbd> is doing</td> | <td>Output messages about what <kbd>javadoc</kbd> is doing</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Locale</td> | <td>Locale</td> | ||||
| <td>Locale to be used, e.g. <q>en_US</q> or <q>en_US_WIN</q></td> | <td>Locale to be used, e.g. <q>en_US</q> or <q>en_US_WIN</q></td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Encoding</td> | <td>Encoding</td> | ||||
| <td>Source file encoding name</td> | <td>Source file encoding name</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Version</td> | <td>Version</td> | ||||
| <td>Include <code>@version</code> paragraphs</td> | <td>Include <code>@version</code> paragraphs</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Use</td> | <td>Use</td> | ||||
| <td>Create class and package usage pages</td> | <td>Create class and package usage pages</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Author</td> | <td>Author</td> | ||||
| <td>Include <code>@author</code> paragraphs</td> | <td>Include <code>@author</code> paragraphs</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Splitindex</td> | <td>Splitindex</td> | ||||
| <td>Split index into one file per letter</td> | <td>Split index into one file per letter</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Windowtitle</td> | <td>Windowtitle</td> | ||||
| <td>Browser window title for the documentation (text)</td> | <td>Browser window title for the documentation (text)</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Doctitle</td> | <td>Doctitle</td> | ||||
| <td>Include title for the package index (first) page (HTML code)</td> | <td>Include title for the package index (first) page (HTML code)</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Header</td> | <td>Header</td> | ||||
| <td>Include header text for each page (HTML code)</td> | <td>Include header text for each page (HTML code)</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>Footer</td> | <td>Footer</td> | ||||
| <td>Include footer text for each page (HTML code)</td> | <td>Include footer text for each page (HTML code)</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>bottom</td> | <td>bottom</td> | ||||
| <td>Include bottom text for each page (HTML code)</td> | <td>Include bottom text for each page (HTML code)</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>link</td> | <td>link</td> | ||||
| <td>Create links to <code>javadoc</code> output at the given URL—see also the | <td>Create links to <code>javadoc</code> output at the given URL—see also the | ||||
| nested <code>link</code> element.</td> | nested <code>link</code> element.</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| @@ -298,7 +258,6 @@ with the <var>exclude</var> patterns of the <code>packageset</code> (and vice ve | |||||
| at <samp><em>alt-url</em></samp> by specifying a | at <samp><em>alt-url</em></samp> by specifying a | ||||
| value <q><em>url</em> <em>alt-url</em></q> (space as separator). A shorthand for the | value <q><em>url</em> <em>alt-url</em></q> (space as separator). A shorthand for the | ||||
| nested <code>link</code> element with <var>offline</var>=<q>true</q>.</td> | nested <code>link</code> element with <var>offline</var>=<q>true</q>.</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| @@ -306,94 +265,79 @@ with the <var>exclude</var> patterns of the <code>packageset</code> (and vice ve | |||||
| <td>Group specified packages together in overview page. The format is as | <td>Group specified packages together in overview page. The format is as | ||||
| described <a href="#groupattribute">below</a>—see also the nested <code>group</code> | described <a href="#groupattribute">below</a>—see also the nested <code>group</code> | ||||
| element.</td> | element.</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>nodeprecated</td> | <td>nodeprecated</td> | ||||
| <td>Do not include <code>@deprecated</code> information</td> | <td>Do not include <code>@deprecated</code> information</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>nodeprecatedlist</td> | <td>nodeprecatedlist</td> | ||||
| <td>Do not generate deprecated list</td> | <td>Do not generate deprecated list</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>notree</td> | <td>notree</td> | ||||
| <td>Do not generate class hierarchy</td> | <td>Do not generate class hierarchy</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>noindex</td> | <td>noindex</td> | ||||
| <td>Do not generate index</td> | <td>Do not generate index</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>nohelp</td> | <td>nohelp</td> | ||||
| <td>Do not generate help link</td> | <td>Do not generate help link</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>nonavbar</td> | <td>nonavbar</td> | ||||
| <td>Do not generate navigation bar</td> | <td>Do not generate navigation bar</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>serialwarn</td> | <td>serialwarn</td> | ||||
| <td>Generate warning about <code>@serial</code> tag</td> | <td>Generate warning about <code>@serial</code> tag</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>helpfile</td> | <td>helpfile</td> | ||||
| <td>Specifies the HTML help file to use</td> | <td>Specifies the HTML help file to use</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>stylesheetfile</td> | <td>stylesheetfile</td> | ||||
| <td>Specifies the CSS stylesheet to use</td> | <td>Specifies the CSS stylesheet to use</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>charset</td> | <td>charset</td> | ||||
| <td>Charset for cross-platform viewing of generated documentation</td> | <td>Charset for cross-platform viewing of generated documentation</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>docencoding</td> | <td>docencoding</td> | ||||
| <td>Output file encoding name</td> | <td>Output file encoding name</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>doclet</td> | <td>doclet</td> | ||||
| <td>Specifies the class file that starts the doclet used in generating the | <td>Specifies the class file that starts the doclet used in generating the | ||||
| documentation—see also the nested <code>doclet</code> element.</td> | documentation—see also the nested <code>doclet</code> element.</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>docletpath</td> | <td>docletpath</td> | ||||
| <td>Specifies the path to the doclet class file that is specified with the <kbd>-doclet</kbd> | <td>Specifies the path to the doclet class file that is specified with the <kbd>-doclet</kbd> | ||||
| option.</td> | option.</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>docletpathref</td> | <td>docletpathref</td> | ||||
| <td>Specifies the path to the doclet class file that is specified with the <kbd>-doclet</kbd> | <td>Specifies the path to the doclet class file that is specified with the <kbd>-doclet</kbd> | ||||
| option by <a href="../using.html#references">reference</a> to a path defined elsewhere.</td> | option by <a href="../using.html#references">reference</a> to a path defined elsewhere.</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| @@ -401,33 +345,28 @@ with the <var>exclude</var> patterns of the <code>packageset</code> (and vice ve | |||||
| <td>Lets you add additional parameters to the <kbd>javadoc</kbd> command line. Useful for | <td>Lets you add additional parameters to the <kbd>javadoc</kbd> command line. Useful for | ||||
| doclets. Parameters containing spaces need to be quoted using &quot;—see also the | doclets. Parameters containing spaces need to be quoted using &quot;—see also the | ||||
| nested <code>arg</code> element.</td> | nested <code>arg</code> element.</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>failonerror</td> | <td>failonerror</td> | ||||
| <td>Stop the build process if the command exits with a return code other than <q>0</q>.</td> | <td>Stop the build process if the command exits with a return code other than <q>0</q>.</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>failonwarning</td> | <td>failonwarning</td> | ||||
| <td>Stop the build process if a warning is emitted—i.e. if <kbd>javadoc</kbd>'s output | <td>Stop the build process if a warning is emitted—i.e. if <kbd>javadoc</kbd>'s output | ||||
| contains the word <q>warning</q>. <em>since Ant 1.9.4</em></td> | contains the word <q>warning</q>. <em>since Ant 1.9.4</em></td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>excludepackagenames</td> | <td>excludepackagenames</td> | ||||
| <td>comma separated list of packages you don't want docs for—see also the | <td>comma separated list of packages you don't want docs for—see also the | ||||
| nested <code>excludepackage</code> element.</td> | nested <code>excludepackage</code> element.</td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>defaultexcludes</td> | <td>defaultexcludes</td> | ||||
| <td>indicates whether default excludes should be used (<q>yes|no</q>).</td> | <td>indicates whether default excludes should be used (<q>yes|no</q>).</td> | ||||
| <td>all</td> | |||||
| <td>No; defaults to <q>yes</q></td> | <td>No; defaults to <q>yes</q></td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| @@ -440,62 +379,54 @@ with the <var>exclude</var> patterns of the <code>packageset</code> (and vice ve | |||||
| If enabled, the file will be written to | If enabled, the file will be written to | ||||
| the <a href="../running.html#tmpdir">temporary | the <a href="../running.html#tmpdir">temporary | ||||
| directory</a>.</td> | directory</a>.</td> | ||||
| <td>all</td> | |||||
| <td>No; default is <q>no</q></td> | <td>No; default is <q>no</q></td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>source</td> | <td>source</td> | ||||
| <td>Enable <kbd>javadoc</kbd> to handle Java language features. Set this to <q>1.4</q> to | <td>Enable <kbd>javadoc</kbd> to handle Java language features. Set this to <q>1.4</q> to | ||||
| document code that compiles using <kbd>javac -source 1.4</kbd>, etc.</td> | document code that compiles using <kbd>javac -source 1.4</kbd>, etc.</td> | ||||
| <td>1.4+</td> | |||||
| <td>No; default can be provided using the magic | <td>No; default can be provided using the magic | ||||
| <a href="../javacprops.html#source"><code>ant.build.javac.source</code></a> property.</td> | <a href="../javacprops.html#source"><code>ant.build.javac.source</code></a> property.</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>linksource</td> | <td>linksource</td> | ||||
| <td>Generate hyperlinks to source files. <em>since Ant 1.6</em>. (<q>yes|no</q>).</td> | <td>Generate hyperlinks to source files. <em>since Ant 1.6</em>. (<q>yes|no</q>).</td> | ||||
| <td>1.4+</td> | |||||
| <td>No; default is <q>no</q></td> | <td>No; default is <q>no</q></td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>breakiterator</td> | <td>breakiterator</td> | ||||
| <td>Use the new break iterator algorithm. <em>since Ant 1.6</em>. (<q>yes|no</q>).</td> | <td>Use the new break iterator algorithm. <em>since Ant 1.6</em>. (<q>yes|no</q>).</td> | ||||
| <td>1.4+</td> | |||||
| <td>No; default is <q>no</q></td> | <td>No; default is <q>no</q></td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>noqualifier</td> | <td>noqualifier</td> | ||||
| <td>Enables the <kbd>-noqualifier</kbd> argument—must be <q>all</q> or a colon separated | <td>Enables the <kbd>-noqualifier</kbd> argument—must be <q>all</q> or a colon separated | ||||
| list of packages. <em>since Ant 1.6</em>.</td> | list of packages. <em>since Ant 1.6</em>.</td> | ||||
| <td>1.4+</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>includenosourcepackages</td> | <td>includenosourcepackages</td> | ||||
| <td>If set to <q>true</q>, packages that don't contain Java source but | <td>If set to <q>true</q>, packages that don't contain Java source but | ||||
| a <samp>package.html</samp> will get documented as well. <em>since Ant 1.6.3</em>.</td> | a <samp>package.html</samp> will get documented as well. <em>since Ant 1.6.3</em>.</td> | ||||
| <td>all</td> | |||||
| <td>No; default is <q>false</q></td> | <td>No; default is <q>false</q></td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>executable</td> | <td>executable</td> | ||||
| <td>Specify a particular <kbd>javadoc</kbd> executable to use in place of the default binary | <td>Specify a particular <kbd>javadoc</kbd> executable to use in place of the default binary | ||||
| (found in the same JDK as Ant is running in). <em>since Ant 1.6.3</em>.</td> | |||||
| <td>all</td> | |||||
| (found in the same JDK as Ant is running in). <em>since Ant 1.6.3</em>. <b>Note:</b> | |||||
| <em>It is up to you to ensure that this command supports the attributes you wish to use.</em></td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>docfilessubdirs</td> | <td>docfilessubdirs</td> | ||||
| <td>Enables deep-copying of <samp>doc-files</samp> subdirectories. <em>since Ant | <td>Enables deep-copying of <samp>doc-files</samp> subdirectories. <em>since Ant | ||||
| 1.8.0</em>.</td> | 1.8.0</em>.</td> | ||||
| <td>1.4</td> | |||||
| <td>No; defaults to <q>false</q></td> | <td>No; defaults to <q>false</q></td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>excludedocfilessubdir</td> | <td>excludedocfilessubdir</td> | ||||
| <td>Colon-separated list of <samp>doc-files</samp> subdirectories to exclude | <td>Colon-separated list of <samp>doc-files</samp> subdirectories to exclude | ||||
| if <var>docfilessubdirs</var> is true. <em>since Ant 1.8.0</em>.</td> | if <var>docfilessubdirs</var> is true. <em>since Ant 1.8.0</em>.</td> | ||||
| <td>1.4</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| @@ -506,14 +437,12 @@ with the <var>exclude</var> patterns of the <code>packageset</code> (and vice ve | |||||
| (<a href="https://www.oracle.com/technetwork/java/javase/7u25-relnotes-1955741.html#jpi-upt" | (<a href="https://www.oracle.com/technetwork/java/javase/7u25-relnotes-1955741.html#jpi-upt" | ||||
| target="_top">details</a>). When this flag is set to <q>true</q>, Ant will check whether the | target="_top">details</a>). When this flag is set to <q>true</q>, Ant will check whether the | ||||
| docs are vulnerable and will try to fix them.</td> | docs are vulnerable and will try to fix them.</td> | ||||
| <td>1.4</td> | |||||
| <td>No; defaults to <q>true</q></td> | <td>No; defaults to <q>true</q></td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>modulesourcepath</td> | <td>modulesourcepath</td> | ||||
| <td>Specify where to find module source files | <td>Specify where to find module source files | ||||
| <em>since Ant 1.10.6</em></td> | <em>since Ant 1.10.6</em></td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| @@ -521,14 +450,12 @@ with the <var>exclude</var> patterns of the <code>packageset</code> (and vice ve | |||||
| <td>Specify where to find module source files by <a | <td>Specify where to find module source files by <a | ||||
| href="../using.html#references">reference</a> to a PATH defined elsewhere. | href="../using.html#references">reference</a> to a PATH defined elsewhere. | ||||
| <em>since Ant 1.10.6</em></td> | <em>since Ant 1.10.6</em></td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>modulepath</td> | <td>modulepath</td> | ||||
| <td>Specify where to find module files | <td>Specify where to find module files | ||||
| <em>since Ant 1.10.6</em></td> | <em>since Ant 1.10.6</em></td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| @@ -536,7 +463,6 @@ with the <var>exclude</var> patterns of the <code>packageset</code> (and vice ve | |||||
| <td>Specify where to find module files by <a | <td>Specify where to find module files by <a | ||||
| href="../using.html#references">reference</a> to a PATH defined elsewhere. | href="../using.html#references">reference</a> to a PATH defined elsewhere. | ||||
| <em>since Ant 1.10.6</em></td> | <em>since Ant 1.10.6</em></td> | ||||
| <td>all</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| </table> | </table> | ||||
| @@ -28,11 +28,7 @@ | |||||
| <h3>Description</h3> | <h3>Description</h3> | ||||
| <p>Generates JNI headers from a Java class.</p> | <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 | <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="https://docs.oracle.com/javase/8/docs/technotes/tools/windows/javah.html" | |||||
| target="_top">JDK 1.2+</a> | |||||
| or <a href="https://web.archive.org/web/20021018232717/http://java.sun.com/products/jdk/1.1/docs/tooldocs/win32/javah.html" | |||||
| target="_top">pre-1.2 JDK</a> systems are used.</p> | |||||
| implement native methods. | |||||
| <p>If you are building with Java 8 or above consider | <p>If you are building with Java 8 or above consider | ||||
| using <a href="javac.html"><code>javac</code></a>'s <var>nativeheaderdir</var> attribute instead | using <a href="javac.html"><code>javac</code></a>'s <var>nativeheaderdir</var> attribute instead | ||||
| @@ -86,13 +82,15 @@ done is breaking the amount of classes to compile into smaller chunks.</p> | |||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>force</td> | <td>force</td> | ||||
| <td>specifies that output files should always be written (JDK 1.2 only)</td> | |||||
| <td>specifies that output files should always be written | |||||
| (only when using an external javah of JDK 1.2)</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>old</td> | <td>old</td> | ||||
| <td>specifies that old JDK 1.0-style header files should be generated (otherwise output file | <td>specifies that old JDK 1.0-style header files should be generated (otherwise output file | ||||
| contain JNI-style native method function prototypes) (JDK 1.2 only)</td> | |||||
| contain JNI-style native method function prototypes) | |||||
| (only when using an external javah of JDK 1.2)</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| @@ -33,26 +33,6 @@ results.</p> | |||||
| distribution. See <a href="../install.html#librarydependencies">Library Dependencies</a> for more | distribution. See <a href="../install.html#librarydependencies">Library Dependencies</a> for more | ||||
| information.</p> | information.</p> | ||||
| <h3>Requirements</h3> | |||||
| <p>The task needs Apache <a href="https://xml.apache.org/xalan-j/" target="_top">Xalan 2.4.1+ or | |||||
| Xalan XSLTC</a> (JDK 1.4 contains a version of Xalan 2.x, while JDK 1.5 ships with a version of | |||||
| XSLTC). JDK 1.4.2-01 and later ships with a bundled Xalan 2.4.1+, meaning that JDKs prior to version | |||||
| 1.4.2-01 won't work out of the box. The table below summarize the compatibility status.</p> | |||||
| <table> | |||||
| <tr><th scope="col">Xalan</th><th scope="col">Sun JDK Bundle</th><th scope="col">Status</th></tr> | |||||
| <tr><td>2.4.1+</td><td>JDK 1.4.2-01+</td><td>OK</td></tr> | |||||
| <tr><td>XSLTC</td><td>JDK 1.5.x</td><td>OK</td></tr> | |||||
| <tr><td>2.x</td><td>JDK 1.4.x</td><td><em><u>Deprecated</u>, | |||||
| use <samp>${ant.home}/etc/junit-frames-xalan1.xsl</samp><br/>Upgrade Xalan using the JDK endorsement | |||||
| mechanism</em></td></tr> | |||||
| </table> | |||||
| <p>In Ant 1.6.2, we had to decide between supporting Xalan 1/Xalan 2.4.1- and Xalan 2.4.1+/XSLTC, | |||||
| because there was no way to support both couples at the same time.</p> | |||||
| <p><em>Since Ant 1.7</em>, we dropped support for Xalan 1, because Xalan 1 was not available anymore | |||||
| for quite some time.</p> | |||||
| <h3>Parameters</h3> | <h3>Parameters</h3> | ||||
| <table class="attr"> | <table class="attr"> | ||||
| <tr> | <tr> | ||||
| @@ -33,8 +33,8 @@ target="_top">JSR 223</a> supported language. | |||||
| <p><strong>Note</strong>: This task depends on external libraries not included in the Apache Ant | <p><strong>Note</strong>: This task depends on external libraries not included in the Apache Ant | ||||
| distribution. See <a href="../install.html#librarydependencies">Library Dependencies</a> for more | distribution. See <a href="../install.html#librarydependencies">Library Dependencies</a> for more | ||||
| information.</p> | information.</p> | ||||
| <p>The task may use the BSF scripting manager or the JSR 223 manager that is included in JDK 6 and | |||||
| higher. This is controlled by the <var>manager</var> attribute. The JSR 223 scripting manager is | |||||
| <p>The task may use the BSF scripting manager or the JSR 223 manager that is included in the JDK. | |||||
| This is controlled by the <var>manager</var> attribute. The JSR 223 scripting manager is | |||||
| indicated by <q>javax</q>.</p> | indicated by <q>javax</q>.</p> | ||||
| <p>All items (tasks, targets, etc) of the running project are accessible from the script, using | <p>All items (tasks, targets, etc) of the running project are accessible from the script, using | ||||
| either their <var>name</var> or <var>id</var> attributes (as long as their names are considered | either their <var>name</var> or <var>id</var> attributes (as long as their names are considered | ||||
| @@ -81,8 +81,7 @@ In particular all targets should have different location values.</p> | |||||
| values: <q>auto</q>, <q>bsf</q> or <q>javax</q>. | values: <q>auto</q>, <q>bsf</q> or <q>javax</q>. | ||||
| <ul> | <ul> | ||||
| <li><q>bsf</q> use the BSF scripting manager to run the language.</li> | <li><q>bsf</q> use the BSF scripting manager to run the language.</li> | ||||
| <li><q>javax</q> use the <code>javax.scripting</code> manager to run the language. (This | |||||
| will only work for JDK 6 and higher).</li> | |||||
| <li><q>javax</q> use the <code>javax.scripting</code> manager to run the language.</li> | |||||
| <li><q>auto</q> use the BSF engine if it exists, otherwise use | <li><q>auto</q> use the BSF engine if it exists, otherwise use | ||||
| the <code>javax.scripting</code> manager.</li> | the <code>javax.scripting</code> manager.</li> | ||||
| </ul> | </ul> | ||||
| @@ -75,7 +75,7 @@ that makes it clear to readers of the build exactly what is going on.</p> | |||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>useproxy</td> | <td>useproxy</td> | ||||
| <td>Use a proxy to access <var>imgurl</var>.<br/>Note: Only tested on JDK 1.2.2 and above</td> | |||||
| <td>Use a proxy to access <var>imgurl</var>.</td> | |||||
| <td>No</td> | <td>No</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| @@ -29,12 +29,6 @@ | |||||
| <h3>Description</h3> | <h3>Description</h3> | ||||
| <p>Process a set of documents via XSLT.</p> | <p>Process a set of documents via XSLT.</p> | ||||
| <p>This is useful for building views of XML based documentation, or for generating code.</p> | <p>This is useful for building views of XML based documentation, or for generating code.</p> | ||||
| <p><strong>Note</strong>: If you are using JDK 1.4 or higher, this task does not require external | |||||
| libraries not supplied in the Apache Ant distribution. However, often the built in XSL engine is not | |||||
| as up to date as a fresh download, so an update is still highly recommended in particular since the | |||||
| built-in XSLT processors of Java 5 (and to a certain extent Java 6) are known to have serious | |||||
| issues. See <a href="../install.html#librarydependencies">Library Dependencies</a> for more | |||||
| information.</p> | |||||
| <p>It is possible to refine the set of files that are being processed. This can be done with | <p>It is possible to refine the set of files that are being processed. This can be done with | ||||
| the <var>includes</var>, <var>includesfile</var>, <var>excludes</var>, <var>excludesfile</var> | the <var>includes</var>, <var>includesfile</var>, <var>excludes</var>, <var>excludesfile</var> | ||||
| and <var>defaultexcludes</var> attributes. With the <var>includes</var> or <var>includesfile</var> | and <var>defaultexcludes</var> attributes. With the <var>includes</var> or <var>includesfile</var> | ||||
| @@ -338,13 +338,6 @@ case).</p> | |||||
| <p>Note that you need to escape a dollar-sign (<q>$</q>) with another dollar-sign in Ant.</p> | <p>Note that you need to escape a dollar-sign (<q>$</q>) with another dollar-sign in Ant.</p> | ||||
| <p>The regexp mapper needs a supporting library and an implementation | |||||
| of <code class="code">org.apache.tools.ant.util.regexp.RegexpMatcher</code> that hides the specifics | |||||
| of the library. <em>Since Ant 1.8.0</em>, Java 1.4 or later is required, so the implementation based | |||||
| on the <code class="code">java.util.regex</code> package is always be available. You can still use | |||||
| the now retired Jakarta ORO or Jakarta Regex instead if your provide the corresponding jar in | |||||
| your <code>CLASSPATH</code>.</p> | |||||
| <p>For information about using <a href="https://savannah.gnu.org/projects/gnu-regexp/" | <p>For information about using <a href="https://savannah.gnu.org/projects/gnu-regexp/" | ||||
| target="_top">gnu.regexp</a> or <a href="https://github.com/kzn/regex4j/" target="_top">gnu.rex</a> | target="_top">gnu.regexp</a> or <a href="https://github.com/kzn/regex4j/" target="_top">gnu.rex</a> | ||||
| with Ant, see <a href="https://marc.info/?l=ant-dev&m=97550753813481&w=2" target="_top">this</a> | with Ant, see <a href="https://marc.info/?l=ant-dev&m=97550753813481&w=2" target="_top">this</a> | ||||
| @@ -364,7 +357,7 @@ in a nested <code><classpath></code>.</p> | |||||
| <li>If the system property <code>ant.regexp.matcherimpl</code> has been set, it is taken as the name | <li>If the system property <code>ant.regexp.matcherimpl</code> has been set, it is taken as the name | ||||
| of the class implementing <code class="code">org.apache.tools.ant.util.regexp.RegexpMatcher</code> | of the class implementing <code class="code">org.apache.tools.ant.util.regexp.RegexpMatcher</code> | ||||
| that should be used.</li> | that should be used.</li> | ||||
| <li>If it has not been set, uses the JDK 1.4 classes.</li> | |||||
| <li>If it has not been set, uses the default from the <code>java.util.regex</code> package.</li> | |||||
| </ul> | </ul> | ||||
| <h5>Examples</h5> | <h5>Examples</h5> | ||||
| @@ -57,7 +57,7 @@ Regexp represents a regular expression. | |||||
| <h3 id="implementation">Choice of regular expression implementation</h3> | <h3 id="implementation">Choice of regular expression implementation</h3> | ||||
| <p>Apache Ant comes with wrappers for | <p>Apache Ant comes with wrappers for | ||||
| the <a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/package-summary.html" | the <a href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/package-summary.html" | ||||
| target="_top">java.util.regex | |||||
| target="_top"><code>java.util.regex</code> | |||||
| package</a>, <a href="https://attic.apache.org/projects/jakarta-regexp.html" | package</a>, <a href="https://attic.apache.org/projects/jakarta-regexp.html" | ||||
| target="_top">jakarta-regexp</a> and <a href="https://attic.apache.org/projects/jakarta-oro.html" | target="_top">jakarta-regexp</a> and <a href="https://attic.apache.org/projects/jakarta-oro.html" | ||||
| target="_top">jakarta-ORO</a>, see <a href="../install.html#librarydependencies">installation | target="_top">jakarta-ORO</a>, see <a href="../install.html#librarydependencies">installation | ||||
| @@ -82,7 +82,7 @@ you rely on it.</p> | |||||
| <ul> | <ul> | ||||
| <li>Jakarta Oro defines a line terminator as <q>\n</q> and is consistent with Perl.</li> | <li>Jakarta Oro defines a line terminator as <q>\n</q> and is consistent with Perl.</li> | ||||
| <li>Jakarta RegExp uses a system-dependent line terminator.</li> | <li>Jakarta RegExp uses a system-dependent line terminator.</li> | ||||
| <li>JDK 1.4 uses <q>\n</q>, <q>\r\n</q>, <q>\u0085</q>, <q>\u2028</q>, <q>\u2029</q> as a | |||||
| <li><code>java.util.regex</code> uses <q>\n</q>, <q>\r\n</q>, <q>\u0085</q>, <q>\u2028</q>, <q>\u2029</q> as a | |||||
| default but is configured in the wrapper to use only <q>\n</q> (UNIX_LINE)</li> | default but is configured in the wrapper to use only <q>\n</q> (UNIX_LINE)</li> | ||||
| </ul> | </ul> | ||||
| <p><em>We used to recommend that you use Jakarta ORO but since its development has been retired | <p><em>We used to recommend that you use Jakarta ORO but since its development has been retired | ||||
| @@ -165,9 +165,9 @@ is</p> | |||||
| inner <code class="code">AddAsisRemove</code> class used in <code class="code">setCr</code> for | inner <code class="code">AddAsisRemove</code> class used in <code class="code">setCr</code> for | ||||
| an example.</li> | an example.</li> | ||||
| <li>A (Java 5) enumeration, Ant will call the setter with the enum constant matching the value | |||||
| <li>An enumeration, Ant will call the setter with the enum constant matching the value | |||||
| given in the build file. This is easier than using <code class="code">EnumeratedAttribute</code> | given in the build file. This is easier than using <code class="code">EnumeratedAttribute</code> | ||||
| and can result in cleaner code, but of course your task will not run on JDK 1.4 or earlier. Note | |||||
| and can result in cleaner code. Note | |||||
| that any override of <code class="code">toString()</code> in the enumeration is ignored; the | that any override of <code class="code">toString()</code> in the enumeration is ignored; the | ||||
| build file must use the declared name (see <code>Enum.getName()</code>). You may wish to use | build file must use the declared name (see <code>Enum.getName()</code>). You may wish to use | ||||
| lowercase enum constant names, in contrast to usual Java style, to look better in build | lowercase enum constant names, in contrast to usual Java style, to look better in build | ||||
| @@ -242,6 +242,7 @@ The more up-to-date the version of Java, the more Ant tasks you get. | |||||
| </p> | </p> | ||||
| <p> | <p> | ||||
| <strong>Note</strong>: | <strong>Note</strong>: | ||||
| Ant 1.10.* works with JDK 8 and higher, | |||||
| Ant 1.9.* works with JDK 1.5 and higher, Ant 1.8.* works with JDK 1.4 and higher, Ant 1.7.* works with JDK 1.3 and higher, | Ant 1.9.* works with JDK 1.5 and higher, Ant 1.8.* works with JDK 1.4 and higher, Ant 1.7.* works with JDK 1.3 and higher, | ||||
| Ant 1.6.* works with JDK 1.2 and higher, Ant 1.2 to Ant 1.5.* work with JDK 1.1 and higher. | Ant 1.6.* works with JDK 1.2 and higher, Ant 1.2 to Ant 1.5.* work with JDK 1.1 and higher. | ||||
| </p> | </p> | ||||
| @@ -573,19 +574,19 @@ have to spend much time configuring the JVM properties until they are happy. | |||||
| <p>Assume Ant is installed in <samp>c:\ant\</samp>. The following sets up the | <p>Assume Ant is installed in <samp>c:\ant\</samp>. The following sets up the | ||||
| environment:</p> | environment:</p> | ||||
| <pre class="input">set ANT_HOME=c:\ant | <pre class="input">set ANT_HOME=c:\ant | ||||
| set JAVA_HOME=c:\jdk1.7.0_51 | |||||
| set JAVA_HOME=c:\jdk11.0.8_10 | |||||
| set PATH=%PATH%;%ANT_HOME%\bin</pre> | set PATH=%PATH%;%ANT_HOME%\bin</pre> | ||||
| <h3 id="bash">Linux/Unix (bash)</h3> | <h3 id="bash">Linux/Unix (bash)</h3> | ||||
| <p>Assume Ant is installed in <samp>/usr/local/ant</samp>. The following sets up | <p>Assume Ant is installed in <samp>/usr/local/ant</samp>. The following sets up | ||||
| the environment:</p> | the environment:</p> | ||||
| <pre class="input">export ANT_HOME=/usr/local/ant | <pre class="input">export ANT_HOME=/usr/local/ant | ||||
| export JAVA_HOME=/usr/local/jdk1.7.0_51 | |||||
| export JAVA_HOME=/usr/local/jdk-11.0.8+10 | |||||
| export PATH=${PATH}:${ANT_HOME}/bin</pre> | export PATH=${PATH}:${ANT_HOME}/bin</pre> | ||||
| <h3 id="tcshcsh">Linux/Unix (csh)</h3> | <h3 id="tcshcsh">Linux/Unix (csh)</h3> | ||||
| <pre class="input">setenv ANT_HOME /usr/local/ant | <pre class="input">setenv ANT_HOME /usr/local/ant | ||||
| setenv JAVA_HOME /usr/local/jdk/jdk1.7.0_51 | |||||
| setenv JAVA_HOME=/usr/local/jdk-11.0.8+10 | |||||
| set path=( $path $ANT_HOME/bin )</pre> | set path=( $path $ANT_HOME/bin )</pre> | ||||
| <p> | <p> | ||||
| @@ -777,14 +778,14 @@ these tasks available. Please refer to the <a href="#optionalTasks">Installing A | |||||
| <tr> | <tr> | ||||
| <td>jakarta-regexp-1.4.jar</td> | <td>jakarta-regexp-1.4.jar</td> | ||||
| <td><a href="Types/mapper.html#regexp-mapper">regexp</a> type with mappers (if you do not wish to use | <td><a href="Types/mapper.html#regexp-mapper">regexp</a> type with mappers (if you do not wish to use | ||||
| java.util.regex)</td> | |||||
| <code>java.util.regex</code>)</td> | |||||
| <td><a href="https://attic.apache.org/projects/jakarta-regexp.html" | <td><a href="https://attic.apache.org/projects/jakarta-regexp.html" | ||||
| target="_top">https://attic.apache.org/projects/jakarta-regexp.html</a></td> | target="_top">https://attic.apache.org/projects/jakarta-regexp.html</a></td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>jakarta-oro-2.0.8.jar</td> | <td>jakarta-oro-2.0.8.jar</td> | ||||
| <td><a href="Types/mapper.html#regexp-mapper">regexp</a> type with mappers (if you do not wish to use | <td><a href="Types/mapper.html#regexp-mapper">regexp</a> type with mappers (if you do not wish to use | ||||
| java.util.regex) or <a href="Tasks/ftp.html">ftp</a> task with <a href="#commons-net">commons-net</a> 1.4.1</td> | |||||
| <code>java.util.regex</code>) or <a href="Tasks/ftp.html">ftp</a> task with <a href="#commons-net">commons-net</a> 1.4.1</td> | |||||
| <td><a href="https://attic.apache.org/projects/jakarta-oro.html" | <td><a href="https://attic.apache.org/projects/jakarta-oro.html" | ||||
| target="_top">https://attic.apache.org/projects/jakarta-oro.html</a></td> | target="_top">https://attic.apache.org/projects/jakarta-oro.html</a></td> | ||||
| </tr> | </tr> | ||||
| @@ -128,44 +128,6 @@ MacOS X a.k.a. macOS is the first of the Apple platforms that Ant supports compl | |||||
| like any other Unix. | like any other Unix. | ||||
| </p> | </p> | ||||
| <h2>Novell Netware</h2> | |||||
| <p> | |||||
| To give the same level of sophisticated control as Ant's startup scripts on other platforms, it was | |||||
| decided to make the main ant startup on NetWare be via a Perl Script, <code>runant.pl</code>. This | |||||
| is found in the <samp>bin</samp> directory (for instance—<samp>bootstrap\bin</samp> | |||||
| or <samp>dist\bin</samp>). | |||||
| </p> | |||||
| <p>One important item of note is that you need to set up the following to run Ant:</p> | |||||
| <ul> | |||||
| <li><code>CLASSPATH</code>—put <samp>ant.jar</samp> and any other needed jars on the system | |||||
| classpath.</li> | |||||
| <li><code>ANT_OPTS</code>—On NetWare, <code>ANT_OPTS</code> needs to include a parameter of | |||||
| the form, <kbd>-envCWD=<i>ANT_HOME</i></kbd>, with <kbd><i>ANT_HOME</i></kbd> being the | |||||
| fully expanded location of Ant, <strong>not</strong> an environment variable. This is due to | |||||
| the fact that the NetWare System Console has no notion of a current working directory.</li> | |||||
| </ul> | |||||
| <p>It is suggested that you create up an <samp>ant.ncf</samp> that sets up these parameters, and | |||||
| calls <samp>perl ANT_HOME/dist/bin/runant.pl</samp></p> | |||||
| <p>The following is an example of such an NCF file (assuming Ant is installed | |||||
| in <samp>sys:/apache-ant/</samp>):</p> | |||||
| <pre> | |||||
| envset CLASSPATH=sys:/apache-ant/bootstrap/lib/ant.jar | |||||
| envset CLASSPATH=$CLASSPATH;sys:/apache-ant/lib/optional/junit.jar | |||||
| envset CLASSPATH=$CLASSPATH;sys:/apache-ant/bootstrap/lib/optional.jar | |||||
| setenv ANT_OPTS=-envCWD=sys:/apache-ant | |||||
| envset ANT_OPTS=-envCWD=sys:/apache-ant | |||||
| setenv ANT_HOME=sys:/apache-ant/dist/lib | |||||
| envset ANT_HOME=sys:/apache-ant/dist/lib | |||||
| perl sys:/apache-ant/dist/bin/runant.pl</pre> | |||||
| <p>Ant works on JVM version 1.3 or higher. You may have some luck running it on JVM 1.2, but | |||||
| serious problems have been found running Ant on JVM 1.1.7B. These problems are caused by JVM bugs | |||||
| that will not be fixed.</p> | |||||
| <p>JVM 1.3 is supported on Novell NetWare versions 5.1 and higher.</p> | |||||
| <h2>Other platforms</h2> | <h2>Other platforms</h2> | ||||
| <p> | <p> | ||||
| Support for other platforms is not guaranteed to be complete, as certain techniques to hide platform | Support for other platforms is not guaranteed to be complete, as certain techniques to hide platform | ||||
| @@ -326,7 +326,7 @@ And I filtered out the <code>getPropertyHelper</code> access.</p> | |||||
| <tr> | <tr> | ||||
| <td><code>ant.regexp.regexpimpl</code></td> | <td><code>ant.regexp.regexpimpl</code></td> | ||||
| <td>classname</td> | <td>classname</td> | ||||
| <td>classname for a RegExp implementation; by default, JDK 1.4+ | |||||
| <td>classname for a RegExp implementation; by default the <code>java.util.regex</code> | |||||
| implementation; <a href="Types/mapper.html#regexp-mapper">RegExp | implementation; <a href="Types/mapper.html#regexp-mapper">RegExp | ||||
| Mapper</a> "Choice of regular expression implementation".</td> | Mapper</a> "Choice of regular expression implementation".</td> | ||||
| </tr> | </tr> | ||||
| @@ -239,8 +239,7 @@ BUILD SUCCESSFUL</pre> | |||||
| API—customizable to a high degree (including switching off during usual life (= not development) execution). We | API—customizable to a high degree (including switching off during usual life (= not development) execution). We | ||||
| use Log4J for that, because</p> | use Log4J for that, because</p> | ||||
| <ul> | <ul> | ||||
| <li>it is not part of the JDK (1.4+) and we want to show how to use external libs</li> | |||||
| <li>it can run under JDK 1.2 (as Ant)</li> | |||||
| <li>it is not part of the JDK and we want to show how to use external libs</li> | |||||
| <li>it's highly configurable</li> | <li>it's highly configurable</li> | ||||
| <li>it's from Apache ;-)</li> | <li>it's from Apache ;-)</li> | ||||
| </ul> | </ul> | ||||
| @@ -658,7 +658,7 @@ After that it prints out the result (e.g. <samp>C:/ant-1.5.4/bin/ant.jar;C | |||||
| <li>is the right package used?</li> | <li>is the right package used?</li> | ||||
| <li>does the code conform to the styleguide?</li> | <li>does the code conform to the styleguide?</li> | ||||
| <li>do all tests pass?</li> | <li>do all tests pass?</li> | ||||
| <li>does the code compile on JDK 5 (and passes all tests there)?</li> | |||||
| <li>does the code compile on the minimal and current JDK for the Ant distribution (and passes all tests there)?</li> | |||||
| <li>code under Apache license</li> | <li>code under Apache license</li> | ||||
| <li>create a patch file</li> | <li>create a patch file</li> | ||||
| <li>publishing that patch file</li> | <li>publishing that patch file</li> | ||||
| @@ -671,12 +671,12 @@ additional information on that.</p> | |||||
| <li>Java file begins with Apache license statement. <strong><em>must do that</em></strong></li> | <li>Java file begins with Apache license statement. <strong><em>must do that</em></strong></li> | ||||
| <li>Task does not depend on GPL or LGPL code. <strong><em>ok</em></strong></li> | <li>Task does not depend on GPL or LGPL code. <strong><em>ok</em></strong></li> | ||||
| <li>Source code complies with style guidelines <strong><em>have to check (checkstyle)</em></strong></li> | <li>Source code complies with style guidelines <strong><em>have to check (checkstyle)</em></strong></li> | ||||
| <li>Code compiles and runs on Java 5 <strong><em>have to try</em></strong></li> | |||||
| <li>Code compiles and runs on minimal support java version <strong><em>have to try</em></strong></li> | |||||
| <li>Member variables are private, and provide public accessor methods if access is actually needed. <strong><em>have to | <li>Member variables are private, and provide public accessor methods if access is actually needed. <strong><em>have to | ||||
| check (checkstyle)</em></strong></li> | check (checkstyle)</em></strong></li> | ||||
| <li><em>Maybe</em> Task has <var>failonerror</var> attribute to control failure | <li><em>Maybe</em> Task has <var>failonerror</var> attribute to control failure | ||||
| behaviour <strong><em>hasn't</em></strong></li> | behaviour <strong><em>hasn't</em></strong></li> | ||||
| <li>New test cases written and succeed <strong><em>passed on JDK 8, have to try on JDK 5</em></strong></li> | |||||
| <li>New test cases written and succeed <strong><em>passed on newest jdk version, have to try on oldest supported jdk version</em></strong></li> | |||||
| <li>Documentation page written <strong><em>ok</em></strong></li> | <li>Documentation page written <strong><em>ok</em></strong></li> | ||||
| <li>Example task declarations in the documentation tested. <strong><em>ok (used in tests)</em></strong></li> | <li>Example task declarations in the documentation tested. <strong><em>ok (used in tests)</em></strong></li> | ||||
| <li>Message to dev contains [SUBMIT] and task name in subject <strong><em>to do</em></strong></li> | <li>Message to dev contains [SUBMIT] and task name in subject <strong><em>to do</em></strong></li> | ||||
| @@ -764,9 +764,10 @@ after <code>git clone</code> (without our modifications).</p> | |||||
| <h3>Apache license statement</h3> | <h3>Apache license statement</h3> | ||||
| <p>Simply copy the license text from one the other source from the Ant source tree.</p> | <p>Simply copy the license text from one the other source from the Ant source tree.</p> | ||||
| <h3>Test on JDK 5</h3> | |||||
| <p>Ant 1.10 uses Java 8 for development, but Ant 1.9 is actively maintained, too. That means that Ant code must be able | |||||
| to run on a JDK 5. So we have to test that. You can download older JDKs | |||||
| <h3>Test on the minimal JDK version</h3> | |||||
| <p>Ant 1.10 uses Java 8 for development, but Ant 1.9 is actively maintained, too. That means that updates to Ant code | |||||
| present in Ant 1.9 must be able to run on a JDK 5. (It is fine to address only ant 1.10 and above for new teasks.) | |||||
| So we have to test that. You can download older JDKs | |||||
| from <a href="https://www.oracle.com/technetwork/java/archive-139210.html" target="_top">Oracle [8]</a>.</p> | from <a href="https://www.oracle.com/technetwork/java/archive-139210.html" target="_top">Oracle [8]</a>.</p> | ||||
| <p>Clean the <code>ANT_HOME</code> variable, delete the <samp>build</samp>, <samp>bootstrap</samp> and <samp>dist</samp> | <p>Clean the <code>ANT_HOME</code> variable, delete the <samp>build</samp>, <samp>bootstrap</samp> and <samp>dist</samp> | ||||