this time.) Also add the JavaWorld finalist logo (unless for some reason people don't want it up there). PR: Obtained from: Submitted by: Reviewed by: git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271729 13f79535-47bb-0310-9956-ffa450edef68master
@@ -23,6 +23,9 @@ | |||
<td align="left"> | |||
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a> | |||
</td> | |||
<td align="center"> | |||
<a href="http://www.javaworld.com"><img src="images/jw_ec_logo_finalist2002.gif" border="0"/></a> | |||
</td> | |||
<td align="right"> | |||
<a href="http://jakarta.apache.org/ant/"><img src="./artwork/ant_logo_large.gif" alt="Apache Ant" border="0"/></a> | |||
</td> | |||
@@ -21,6 +21,9 @@ | |||
<td align="left"> | |||
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a> | |||
</td> | |||
<td align="center"> | |||
<a href="http://www.javaworld.com"><img src="images/jw_ec_logo_finalist2002.gif" border="0"/></a> | |||
</td> | |||
<td align="right"> | |||
<a href="http://jakarta.apache.org/ant/"><img src="./artwork/ant_logo_large.gif" alt="Apache Ant" border="0"/></a> | |||
</td> | |||
@@ -21,6 +21,9 @@ | |||
<td align="left"> | |||
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a> | |||
</td> | |||
<td align="center"> | |||
<a href="http://www.javaworld.com"><img src="images/jw_ec_logo_finalist2002.gif" border="0"/></a> | |||
</td> | |||
<td align="right"> | |||
<a href="http://jakarta.apache.org/ant/"><img src="./artwork/ant_logo_large.gif" alt="Apache Ant" border="0"/></a> | |||
</td> | |||
@@ -23,6 +23,9 @@ | |||
<td align="left"> | |||
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a> | |||
</td> | |||
<td align="center"> | |||
<a href="http://www.javaworld.com"><img src="images/jw_ec_logo_finalist2002.gif" border="0"/></a> | |||
</td> | |||
<td align="right"> | |||
<a href="http://jakarta.apache.org/ant/"><img src="./artwork/ant_logo_large.gif" alt="Apache Ant" border="0"/></a> | |||
</td> | |||
@@ -21,6 +21,9 @@ | |||
<td align="left"> | |||
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a> | |||
</td> | |||
<td align="center"> | |||
<a href="http://www.javaworld.com"><img src="images/jw_ec_logo_finalist2002.gif" border="0"/></a> | |||
</td> | |||
<td align="right"> | |||
<a href="http://jakarta.apache.org/ant/"><img src="./artwork/ant_logo_large.gif" alt="Apache Ant" border="0"/></a> | |||
</td> | |||
@@ -21,6 +21,9 @@ | |||
<td align="left"> | |||
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a> | |||
</td> | |||
<td align="center"> | |||
<a href="http://www.javaworld.com"><img src="images/jw_ec_logo_finalist2002.gif" border="0"/></a> | |||
</td> | |||
<td align="right"> | |||
<a href="http://jakarta.apache.org/ant/"><img src="./artwork/ant_logo_large.gif" alt="Apache Ant" border="0"/></a> | |||
</td> | |||
@@ -18,9 +18,15 @@ | |||
<table border="0" width="100%" cellspacing="0"> | |||
<!-- TOP IMAGE --> | |||
<tr> | |||
<td colspan="2"> | |||
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" align="left" border="0"/></a> | |||
<td align="left"> | |||
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a> | |||
</td> | |||
<td align="center"> | |||
<a href="http://www.javaworld.com"><img src="images/jw_ec_logo_finalist2002.gif" border="0"/></a> | |||
</td> | |||
<td align="right"> | |||
<a href="http://jakarta.apache.org/ant/"><img src="./artwork/ant_logo_large.gif" alt="Apache Ant" border="0"/></a> | |||
</td> | |||
</tr> | |||
</table> | |||
<table border="0" width="100%" cellspacing="4"> | |||
@@ -88,21 +94,22 @@ | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<tr><td bgcolor="#525D76"> | |||
<font color="#ffffff" face="arial,helvetica,sanserif"> | |||
<a name="Having problems?"><strong>Having problems?</strong></a> | |||
<a name="Having Problems?"><strong>Having Problems?</strong></a> | |||
</font> | |||
</td></tr> | |||
<tr><td> | |||
<blockquote> | |||
<p>This page details some steps you can take to try and resolve | |||
<p> | |||
This page details some steps you can take to try and resolve | |||
any problems you may be having with Ant. If you find you can't | |||
resolve the problem, then this page will help you collect some of | |||
the relevant information to provide in a bug report. This information | |||
will help the Ant developers understand and resolve the problem. | |||
Of course, not all the steps here will make sense for every problem | |||
you may encounter – these are just some suggestions to point | |||
you may encounter - these are just some suggestions to point | |||
you in the right direction. | |||
</p> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<tr><td bgcolor="#828DA6"> | |||
<font color="#ffffff" face="arial,helvetica,sanserif"> | |||
<a name="Read the Manual"><strong>Read the Manual</strong></a> | |||
@@ -110,7 +117,8 @@ | |||
</td></tr> | |||
<tr><td> | |||
<blockquote> | |||
<p>The first step to take when you have a problem with Ant is to read | |||
<p> | |||
The first step to take when you have a problem with Ant is to read | |||
the <a href="manual/index.html">manual</a> entry for the task or | |||
concept that is giving you trouble. In particular, check the | |||
meaning of a task's attributes and nested elements. Perhaps an | |||
@@ -119,10 +127,10 @@ | |||
documentation bug report (see below) to help us improve the Ant | |||
documentation. | |||
</p> | |||
</blockquote> | |||
</blockquote> | |||
</td></tr> | |||
</table> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<tr><td bgcolor="#828DA6"> | |||
<font color="#ffffff" face="arial,helvetica,sanserif"> | |||
<a name="Examine Debug Output"><strong>Examine Debug Output</strong></a> | |||
@@ -130,105 +138,94 @@ | |||
</td></tr> | |||
<tr><td> | |||
<blockquote> | |||
<p>If you're still having a problem, the next step is to try and | |||
<p> | |||
If you're still having a problem, the next step is to try and | |||
gather additional information about what Ant is doing. | |||
Try running Ant with the <code>verbose</code> flag:<br><br> | |||
<font face="verdana" size="-1">ant -verbose</font><br><br> | |||
or<br><br> | |||
<font face="verdana" size="-1">ant -v</font><br><br> | |||
Try running Ant with the <code>verbose</code> flag: | |||
<br /><br /> | |||
<font face="verdana" size="-1">ant -verbose</font> | |||
<br /><br /> | |||
or | |||
<br /><br /> | |||
<font face="verdana" size="-1">ant -v</font> | |||
<br /><br /> | |||
This will produce output that starts like the following:</p> | |||
<div align="left"> | |||
<table cellspacing="4" cellpadding="0" border="0"> | |||
<tr> | |||
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
</tr> | |||
<tr> | |||
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
<td bgcolor="#ffffff"> | |||
<font face="verdana" size="-1"> | |||
Ant version 1.4.1 compiled on October 11 2001<br> | |||
Buildfile: build.xml<br> | |||
Detected Java version: 1.3 in: D:\usr\local\java\jdk13\jre<br> | |||
Detected OS: Windows NT<br> | |||
This will produce output that starts like the following:</p> | |||
<table> | |||
<tr> | |||
<td bgcolor="#a0ddf0" colspan="" rowspan="" | |||
valign="top" align="left"> | |||
<font color="#000000" size="-1" face="arial,helvetica,sanserif"> | |||
Ant version 1.4.1 compiled on October 11 2001<br /> | |||
Buildfile: build.xml<br /> | |||
Detected Java version: 1.3 in: D:\usr\local\java\jdk13\jre<br /> | |||
Detected OS: Windows NT<br /> | |||
parsing buildfile D:\ant\build.xml | |||
with URI = file:D:/ant/build.xml<br> | |||
Project base dir set to: D:\ant<br> | |||
[property] Loading Environment env.<br> | |||
[property] Loading D:\ant\conf.properties<br> | |||
Build sequence for target 'debug' is [debug]<br> | |||
Complete build sequence is [debug, gensrc, compile, jar, test]<br> | |||
. . .<br> | |||
</font> | |||
</td> | |||
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
</tr> | |||
<tr> | |||
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
with URI = file:D:/ant/build.xml<br /> | |||
Project base dir set to: D:\ant<br /> | |||
[property] Loading Environment env.<br /> | |||
[property] Loading D:\ant\conf.properties<br /> | |||
Build sequence for target 'debug' is [debug]<br /> | |||
Complete build sequence is [debug, gensrc, compile, jar, test]<br /> | |||
. . .<br /> | |||
</font> | |||
</td> | |||
</tr> | |||
</table> | |||
</div> | |||
<p>You should be able to see from the trace more about what Ant | |||
</table> | |||
<p> | |||
You should be able to see from the trace more about what Ant | |||
is doing and why it's taking a particular course of action. | |||
If you need even more information, you can use the | |||
<code>‑debug</code> flag rather than | |||
<code>‑verbose</code>. | |||
<code>-debug</code> flag rather than | |||
<code>-verbose</code>. | |||
This will generally produce so much | |||
output that you may want to save the output to a file and | |||
analyze it in an editor. You can save the output using the | |||
<code>‑logfile <filename></code> flag, or using | |||
<code>-logfile <filename></code> flag, or using | |||
redirection. | |||
</p> | |||
<p>Once you have all this debug information, how can you use it | |||
<p> | |||
Once you have all this debug information, how can you use it | |||
to solve your problem? That will depend on the task in question | |||
and the nature of your problem. Each task logs different aspects | |||
of its operation, but it should give you an idea of what is going | |||
on. For example, the <javac> task logs the reasons why it | |||
on. For example, the <code><javac></code> task logs the | |||
reasons why it | |||
chooses to compile particular class files and not others, along | |||
with which compiler it is using and the arguments it will pass | |||
to that compiler. The following partial trace shows why | |||
<javac> is adding one class file but skipping another. | |||
<code><javac></code> is adding one class file but | |||
skipping another. | |||
This is followed by which compiler it will be using, the | |||
arguments that will get passed to the compiler, | |||
and a list of all the class files to be compiled. | |||
</p> | |||
<div align="left"> | |||
<table cellspacing="4" cellpadding="0" border="0"> | |||
<tr> | |||
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
</tr> | |||
<tr> | |||
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
<td bgcolor="#ffffff"> | |||
<font face="verdana" size="-1"> | |||
[javac] Test.java omitted as D:\classes\Test.class is up to date.<br> | |||
[javac] Unset.java added as D:\classes\Unset.class is outdated.<br> | |||
[javac] Compiling 1 source file to D:\classes<br> | |||
[javac] Using classic compiler<br> | |||
[javac] Compilation args: -d D:\classes -classpath D:\classes;<br> | |||
D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br> | |||
[javac] File to be compiled:<br> | |||
D:\src\java\Unset.java<br> | |||
</font> | |||
</td> | |||
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
</tr> | |||
<tr> | |||
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td> | |||
<table> | |||
<tr> | |||
<td bgcolor="#a0ddf0" colspan="" rowspan="" | |||
valign="top" align="left"> | |||
<font color="#000000" size="-1" face="arial,helvetica,sanserif"> | |||
[javac] Test.java omitted as D:\classes\Test.class is up to date.<br /> | |||
[javac] Unset.java added as D:\classes\Unset.class is outdated.<br /> | |||
[javac] Compiling 1 source file to D:\classes<br /> | |||
[javac] Using classic compiler<br /> | |||
[javac] Compilation args: -d D:\classes -classpath D:\classes;<br /> | |||
D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br /> | |||
[javac] File to be compiled:<br /> | |||
D:\src\java\Unset.java<br /> | |||
</font> | |||
</td> | |||
</tr> | |||
</table> | |||
</div> | |||
<p>In many cases, Ant tasks are wrappers around OS commands or | |||
</table> | |||
<p> | |||
In many cases, Ant tasks are wrappers around OS commands or | |||
other Java classes. In debug mode, many of these tasks will | |||
print out the equivalent command line, as the <javac> task | |||
print out the equivalent command line, as the | |||
<code><javac></code> task | |||
output does. If you are having a problem, it is often useful to | |||
run the command directly from the command line, in the same way | |||
Ant is running it, and see if the problem occurs from there | |||
@@ -238,18 +235,19 @@ D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br> | |||
generated command line. This can help you to understand whether | |||
you are using the correct attributes and values. | |||
</p> | |||
</blockquote> | |||
</blockquote> | |||
</td></tr> | |||
</table> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<tr><td bgcolor="#828DA6"> | |||
<font color="#ffffff" face="arial,helvetica,sanserif"> | |||
<a name="Has it been fixed?"><strong>Has it been fixed?</strong></a> | |||
<a name="Has It Been Fixed?"><strong>Has It Been Fixed?</strong></a> | |||
</font> | |||
</td></tr> | |||
<tr><td> | |||
<blockquote> | |||
<p>After examining the debug output, if you still believe that the | |||
<p> | |||
After examining the debug output, if you still believe that the | |||
problem you are having is caused by Ant, chances are that someone | |||
else may have already encountered this problem, and perhaps it has | |||
been fixed. The next step, therefore, may be to try a nightly build | |||
@@ -268,37 +266,38 @@ D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br> | |||
area</a>. However, even this snapshot does not contain every | |||
optional task. | |||
</p> | |||
</blockquote> | |||
</blockquote> | |||
</td></tr> | |||
</table> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<tr><td bgcolor="#828DA6"> | |||
<font color="#ffffff" face="arial,helvetica,sanserif"> | |||
<a name="Has it been reported?"><strong>Has it been reported?</strong></a> | |||
<a name="Has It Been Reported?"><strong>Has It Been Reported?</strong></a> | |||
</font> | |||
</td></tr> | |||
<tr><td> | |||
<blockquote> | |||
<p>If the current nightly build doesn't resolve your problem, it is | |||
<p> | |||
If the current nightly build doesn't resolve your problem, it is | |||
possible that someone else has reported the issue. It is time to | |||
look at the <a href="http://nagoya.apache.org/bugzilla/"> | |||
Apache Bug Database</a>. This system is easy to use, and it will | |||
let you search the <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.bug_id"> | |||
currently open</a> and resolved bugs to see if your problem has | |||
already been reported. If your problem has been reported, you can | |||
see whether any of the developers have commented, suggesting | |||
workarounds, or the reason for the bug, etc. Or you may have | |||
information to add (see about creating and modifying bug reports | |||
below), in which case, go right ahead and add the information. | |||
If you don't have any additional information, you may just want | |||
to vote for this bug, and perhaps | |||
add yourself to the <code>CC</code> list to follow the progress | |||
of this bug. | |||
currently open</a> and resolved bugs to see if your problem has | |||
already been reported. If your problem has been reported, you can | |||
see whether any of the developers have commented, suggesting | |||
workarounds, or the reason for the bug, etc. Or you may have | |||
information to add (see about creating and modifying bug reports | |||
below), in which case, go right ahead and add the information. | |||
If you don't have any additional information, you may just want | |||
to vote for this bug, and perhaps | |||
add yourself to the <code>CC</code> list to follow the progress | |||
of this bug. | |||
</p> | |||
</blockquote> | |||
</blockquote> | |||
</td></tr> | |||
</table> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<tr><td bgcolor="#828DA6"> | |||
<font color="#ffffff" face="arial,helvetica,sanserif"> | |||
<a name="Filing a Bug Report"><strong>Filing a Bug Report</strong></a> | |||
@@ -306,7 +305,8 @@ D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br> | |||
</td></tr> | |||
<tr><td> | |||
<blockquote> | |||
<p>By this time, you may have decided that there is an unreported | |||
<p> | |||
By this time, you may have decided that there is an unreported | |||
bug in Ant. You have a few choices at this point. You can send | |||
an email to the <code>ant-user</code> mailing list to see if | |||
others have encountered your issue and find out how they may | |||
@@ -320,7 +320,8 @@ D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br> | |||
etc. Once the bug is created, you can also add attachments to | |||
the bug report. | |||
</p> | |||
<p>What information should you include in your bug report? The | |||
<p> | |||
What information should you include in your bug report? The | |||
easiest bugs to fix are those that are most easily reproducible, | |||
so it is really helpful if you can produce a small test case that | |||
exhibits the problem. In this case, you would attach the build file | |||
@@ -336,10 +337,10 @@ D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br> | |||
you receive email asking for further information, please try to | |||
respond, as it will aid in the resolution of your bug. | |||
</p> | |||
</blockquote> | |||
</blockquote> | |||
</td></tr> | |||
</table> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<tr><td bgcolor="#828DA6"> | |||
<font color="#ffffff" face="arial,helvetica,sanserif"> | |||
<a name="Asking for an Enhancement"><strong>Asking for an Enhancement</strong></a> | |||
@@ -347,7 +348,8 @@ D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br> | |||
</td></tr> | |||
<tr><td> | |||
<blockquote> | |||
<p>Sometimes, you may find that Ant just doesn't do what you need it | |||
<p> | |||
Sometimes, you may find that Ant just doesn't do what you need it | |||
to. It isn't a bug, as such, since Ant is working the way it is | |||
supposed to work. Perhaps it is some additional functionality for | |||
a task that hasn't been thought of yet, or maybe a completely new | |||
@@ -356,17 +358,17 @@ D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br> | |||
are managed using the same Apache Bug Database described above. | |||
These are just a different type of bug report. If you look in the | |||
bug database, you will see that one of the severity settings for | |||
a bug is "Enhancement". Just fill the bug report in, | |||
set the severity of the bug to "Enhancement", and | |||
a bug is "Enhancement". Just fill the bug report in, | |||
set the severity of the bug to "Enhancement", and | |||
state in the description how you would like to have Ant enhanced. | |||
Again, you should first check whether there are any existing | |||
enhancment requests that cover your needs. If so, just add your | |||
vote to these. | |||
</p> | |||
</blockquote> | |||
</blockquote> | |||
</td></tr> | |||
</table> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<tr><td bgcolor="#828DA6"> | |||
<font color="#ffffff" face="arial,helvetica,sanserif"> | |||
<a name="Fixing the Bug"><strong>Fixing the Bug</strong></a> | |||
@@ -374,7 +376,8 @@ D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br> | |||
</td></tr> | |||
<tr><td> | |||
<blockquote> | |||
<p>If you aren't satisfied with just filing a bug report, you can | |||
<p> | |||
If you aren't satisfied with just filing a bug report, you can | |||
try to find the cause of the problem and provide a fix yourself. | |||
The best way to do that is by working with the latest code from CVS. | |||
Alternatively, you can work with the source code available from the | |||
@@ -388,42 +391,49 @@ D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br> | |||
patch to the bug report. Using the bug database has the advantage | |||
of being able to track the progress of your patch. | |||
</p> | |||
<p>If you have a patch to submit and are sending it to the | |||
<code>ant-dev</code> mailing list, prefix "[PATCH]" | |||
<p> | |||
If you have a patch to submit and are sending it to the | |||
<code>ant-dev</code> mailing list, prefix "[PATCH]" | |||
to your message subject. Please include any relevant bug numbers. | |||
Patch files should be created with the <code>‑u</code> | |||
Patch files should be created with the <code>-u</code> | |||
option of the | |||
<code>diff</code> or <code>cvs diff</code> command. For | |||
example:<br><br> | |||
<font face="verdana" size="-1"> | |||
diff -u Javac.java.orig Javac.java > javac.diffs<br><br> | |||
</font> | |||
or, if you have source from CVS:<br><br> | |||
<font face="verdana" size="-1"> | |||
cvs diff -u Javac.java > javac.diffs<br><br> | |||
example:<br /><br /> | |||
<font face="verdana" size="-1"> | |||
diff -u Javac.java.orig Javac.java > javac.diffs<br /><br /> | |||
</font> | |||
or, if you have source from CVS:<br /><br /> | |||
<font face="verdana" size="-1"> | |||
cvs diff -u Javac.java > javac.diffs<br /><br /> | |||
</font> | |||
Note: You should give your patch files meaningful names. | |||
This makes it easier for developers who need to apply a number | |||
of different patch files. | |||
</blockquote> | |||
</p> | |||
</blockquote> | |||
</td></tr> | |||
</table> | |||
</blockquote> | |||
</blockquote> | |||
</td></tr> | |||
</table> | |||
</td></tr> | |||
</td> | |||
</tr> | |||
<!-- FOOTER --> | |||
<tr><td colspan="2"> | |||
<hr noshade="" size="1"/> | |||
</td></tr> | |||
<tr><td colspan="2"> | |||
<div align="center"><font color="#525D76" size="-1"> | |||
<em>Copyright © 2000-2002, Apache Software Foundation</em> | |||
</font></div> | |||
<div align="center"><font color="#525D76" size="-1"><em> | |||
Copyright © 2000-2002, Apache Software Foundation | |||
</em></font></div> | |||
</td></tr> | |||
</table> | |||
</body> | |||
</html> | |||
<!-- end the processing --> | |||
@@ -21,6 +21,9 @@ | |||
<td align="left"> | |||
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a> | |||
</td> | |||
<td align="center"> | |||
<a href="http://www.javaworld.com"><img src="images/jw_ec_logo_finalist2002.gif" border="0"/></a> | |||
</td> | |||
<td align="right"> | |||
<a href="http://jakarta.apache.org/ant/"><img src="./artwork/ant_logo_large.gif" alt="Apache Ant" border="0"/></a> | |||
</td> | |||
@@ -21,6 +21,9 @@ | |||
<td align="left"> | |||
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a> | |||
</td> | |||
<td align="center"> | |||
<a href="http://www.javaworld.com"><img src="images/jw_ec_logo_finalist2002.gif" border="0"/></a> | |||
</td> | |||
<td align="right"> | |||
<a href="http://jakarta.apache.org/ant/"><img src="./artwork/ant_logo_large.gif" alt="Apache Ant" border="0"/></a> | |||
</td> | |||
@@ -8,168 +8,253 @@ | |||
<body> | |||
<section name="Having Problems?"> | |||
<p>If you are having problems with Ant, this page details some steps you can take | |||
to try and resolve the problem. If you can't resolve the problem then this page will help | |||
you collect some of the relevant information to provide a bug report. This information will help | |||
the Ant developers understand and resolve the problem. Of course, not all of the steps here will | |||
make sense for every problem you encounter. These are just some suggestions to | |||
point you in the right direction. | |||
</p> | |||
<p> | |||
This page details some steps you can take to try and resolve | |||
any problems you may be having with Ant. If you find you can't | |||
resolve the problem, then this page will help you collect some of | |||
the relevant information to provide in a bug report. This information | |||
will help the Ant developers understand and resolve the problem. | |||
Of course, not all the steps here will make sense for every problem | |||
you may encounter - these are just some suggestions to point | |||
you in the right direction. | |||
</p> | |||
<subsection name="Read the Manual"> | |||
<p>The first step to take when you have a problem is to read the <a href="manual/index.html"> | |||
manual</a> entry for the task or concept that is giving you trouble. Check particularly the meaning of | |||
attributes and nested elements. Perhaps an attribute would provide the behavior you require. If you | |||
have problems with the manual, then you can submit a documentation bug report (see below) to help us | |||
improve the Ant documentation. | |||
</p> | |||
<p> | |||
The first step to take when you have a problem with Ant is to read | |||
the <a href="manual/index.html">manual</a> entry for the task or | |||
concept that is giving you trouble. In particular, check the | |||
meaning of a task's attributes and nested elements. Perhaps an | |||
attribute is available that would provide the behavior you require. | |||
If you have problems with the manual itself, you can submit a | |||
documentation bug report (see below) to help us improve the Ant | |||
documentation. | |||
</p> | |||
</subsection> | |||
<subsection name="Examine Debug Output"> | |||
<p>The first step when you have a problem is to see what Ant is doing. Try running Ant with | |||
The verbose flag<br/><br/> | |||
<code>ant -verbose</code><br/><br/> | |||
or<br/><br/> | |||
<code>ant -v</code><br/><br/> | |||
<p> | |||
If you're still having a problem, the next step is to try and | |||
gather additional information about what Ant is doing. | |||
Try running Ant with the <code>verbose</code> flag: | |||
<br></br><br></br> | |||
<font face="verdana" size="-1">ant -verbose</font> | |||
<br></br><br></br> | |||
or | |||
<br></br><br></br> | |||
<font face="verdana" size="-1">ant -v</font> | |||
<br></br><br></br> | |||
This will produce something which starts like the following:</p> | |||
<source> | |||
Ant version 1.4alpha compiled on August 6 2001 | |||
Buildfile: build.xml | |||
Detected Java version: 1.3 in: f:\jdk1.3\jre | |||
Detected OS: Windows NT | |||
parsing buildfile \jakarta-ant\build.xml with | |||
URI = file:/jakarta-ant/build.xml | |||
Project base dir set to: \jakarta-ant | |||
[property] Loading \jakarta-ant\.ant.properties | |||
[property] Unable to find property file: \jakarta-ant\.ant.properties | |||
[property] Loading \conor\.ant.properties | |||
[property] Override ignored for debug | |||
prepare: | |||
check_for_optional_packages: | |||
... | |||
</source> | |||
This will produce output that starts like the following:</p> | |||
<table> | |||
<tr> | |||
<td> | |||
Ant version 1.4.1 compiled on October 11 2001<br></br> | |||
Buildfile: build.xml<br></br> | |||
Detected Java version: 1.3 in: D:\usr\local\java\jdk13\jre<br></br> | |||
Detected OS: Windows NT<br></br> | |||
parsing buildfile D:\ant\build.xml | |||
with URI = file:D:/ant/build.xml<br></br> | |||
Project base dir set to: D:\ant<br></br> | |||
  [property] Loading Environment env.<br></br> | |||
  [property] Loading D:\ant\conf.properties<br></br> | |||
Build sequence for target 'debug' is [debug]<br></br> | |||
Complete build sequence is [debug, gensrc, compile, jar, test]<br></br> | |||
. . .<br></br> | |||
</td> | |||
</tr> | |||
</table> | |||
<p> | |||
You may be able to see in this trace what ant is doing and why it takes a particular | |||
course of action. If you need even more information you can use the <code>-debug</code> | |||
flag rather than <code>-verbose</code>. This will generally produce so much output that | |||
you may want to save the output and analyze it in an editor. | |||
You should be able to see from the trace more about what Ant | |||
is doing and why it's taking a particular course of action. | |||
If you need even more information, you can use the | |||
<code>-debug</code> flag rather than | |||
<code>-verbose</code>. | |||
This will generally produce so much | |||
output that you may want to save the output to a file and | |||
analyze it in an editor. You can save the output using the | |||
<code>-logfile <filename></code> flag, or using | |||
redirection. | |||
</p> | |||
<p>So, once you have all this debug information, how can you use it to solve your problem? | |||
That will depend on the task in question and the nature of your problem. Each task logs | |||
different aspects of its operation, but it will give you an idea of what is going on. For | |||
example, the <javac> task logs the reasons why it chooses to compile particular | |||
classes and the equivalent command it is using. The following trace (which has been edited | |||
and reformatted for clarity) shows javac adding one class but skipping another. This is followed | |||
by the compiler arguments and a summary of all the classes to be compiled. | |||
<p> | |||
Once you have all this debug information, how can you use it | |||
to solve your problem? That will depend on the task in question | |||
and the nature of your problem. Each task logs different aspects | |||
of its operation, but it should give you an idea of what is going | |||
on. For example, the <code><javac></code> task logs the | |||
reasons why it | |||
chooses to compile particular class files and not others, along | |||
with which compiler it is using and the arguments it will pass | |||
to that compiler. The following partial trace shows why | |||
<code><javac></code> is adding one class file but | |||
skipping another. | |||
This is followed by which compiler it will be using, the | |||
arguments that will get passed to the compiler, | |||
and a list of all the class files to be compiled. | |||
</p> | |||
<source> | |||
[javac] org\apache\tools\ant\listener\Log4jListener.java added as | |||
\build\classes\org\apache\tools\ant\listener\Log4jListener.class | |||
is outdated. | |||
[javac] org\apache\tools\ant\Location.java omitted as | |||
\build\classes\org\apache\tools\ant\Location.class is up to date. | |||
... | |||
[javac] Compiling 1 source file to \jakarta-ant\build\classes | |||
[javac] Using modern compiler | |||
[javac] Compilation args: -d \jakarta-ant\build\classes -classpath | |||
\jakarta-ant\build\classes;F:\jdk1.3\lib\tools.jar; | |||
\Ant\lib\optional.jar;\Ant\lib\log4j.jar; | |||
\Ant\lib\junit.jar;\Ant\lib\jaxp.jar; | |||
\Ant\lib\crimson.jar;\Ant\lib\ant.jar | |||
-sourcepath \jakarta-ant\src\main -g:none -O | |||
[javac] File to be compiled: | |||
\src\main\org\apache\tools\ant\listener\Log4jListener.java | |||
</source> | |||
<table> | |||
<tr> | |||
<td> | |||
[javac] Test.java omitted as D:\classes\Test.class is up to date.<br></br> | |||
[javac] Unset.java added as D:\classes\Unset.class is outdated.<br></br> | |||
[javac] Compiling 1 source file to D:\classes<br></br> | |||
[javac] Using classic compiler<br></br> | |||
[javac] Compilation args: -d D:\classes -classpath D:\classes;<br></br> | |||
D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br></br> | |||
[javac] File to be compiled:<br></br> | |||
D:\src\java\Unset.java<br></br> | |||
</td> | |||
</tr> | |||
</table> | |||
<p> | |||
In many cases Ant tasks are wrappers around OS commands or other java classes. In debug mode, many | |||
of these tasks will print out the equivalent command line, as the <javac> task above does. If | |||
you are having a problem, it is often useful to run the command directly in the same way Ant is doing | |||
and see if the problem persists. The problem may lie in the command being run by Ant, or in the way | |||
the Ant task is running the command. You can also see the effect of changing attribute values on the | |||
generated command line. This can help you to understand whether you are using the correct attributes | |||
and values. | |||
<p> | |||
In many cases, Ant tasks are wrappers around OS commands or | |||
other Java classes. In debug mode, many of these tasks will | |||
print out the equivalent command line, as the | |||
<code><javac></code> task | |||
output does. If you are having a problem, it is often useful to | |||
run the command directly from the command line, in the same way | |||
Ant is running it, and see if the problem occurs from there | |||
as well. The problem may be in the command that is being run, | |||
or it may be in the way the Ant task is running the command. | |||
You can also see the effect of changing attribute values on the | |||
generated command line. This can help you to understand whether | |||
you are using the correct attributes and values. | |||
</p> | |||
</subsection> | |||
<subsection name="Has it been fixed?"> | |||
<p> | |||
After examining the debug output, you still believe that the problem you are having may be caused by Ant. | |||
Chances are that someone else may have already encountered this problem and perhaps it has been | |||
fixed. The next step, therefore, may be to try a nightly build of Ant to see if the | |||
problem has been fixed. Nightly builds for Ant are available from the | |||
<a href="http://www.apache.org/dist/jakarta/jakarta-ant/nightly/">Jakarta web site</a>. While Ant nightly | |||
builds are typically quite stable and are used by <a href="http://www.apache.org/dist/jakarta/gump/latest/"> | |||
Gump</a> to build many other Jakarta projects, these builds should be treated as experimental. You can | |||
install and verify whether your problem has been fixed. Note that nightly builds do not build many of the | |||
optional tasks the come with Ant. A snapshot of these optional tasks is occasionally uploaded to the nightly | |||
download <a href="http://www.apache.org/dist/jakarta/jakarta-ant/nightly/optional/">area</a>. Note that even | |||
this snapshot does not contain every optional task. | |||
<subsection name="Has It Been Fixed?"> | |||
<p> | |||
After examining the debug output, if you still believe that the | |||
problem you are having is caused by Ant, chances are that someone | |||
else may have already encountered this problem, and perhaps it has | |||
been fixed. The next step, therefore, may be to try a nightly build | |||
of Ant to see if the problem has been fixed. Nightly builds for Ant | |||
are available from the | |||
<a href="http://www.apache.org/dist/jakarta/jakarta-ant/nightly/"> | |||
Jakarta web site</a>. While Ant nightly builds are typically quite | |||
stable and are used by | |||
<a href="http://www.apache.org/dist/jakarta/gump/latest/">Gump</a> | |||
to build many other Jakarta projects, these builds should | |||
nonetheless be treated as experimental. Note that nightly builds | |||
do not build many of the optional tasks the come with Ant. | |||
A snapshot of these optional tasks is occasionally uploaded to | |||
the nightly download | |||
<a href="http://www.apache.org/dist/jakarta/jakarta-ant/nightly/optional/"> | |||
area</a>. However, even this snapshot does not contain every | |||
optional task. | |||
</p> | |||
</subsection> | |||
<subsection name="Has it been reported?"> | |||
<p> | |||
If the current nightly build doesn't resolve your problem, it is possible that someone else has reported | |||
the issue. It is time to look at the <a href="http://nagoya.apache.org/bugzilla/">Apache Bug Database</a>. | |||
This system is easy to use and it will let you search the | |||
<a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.bug_id"> | |||
currently open | |||
</a>. | |||
and resolved bugs to see if your problem has already been reported. | |||
If your problem has been reported, you can see whether any of the developers have commented, | |||
suggesting workarounds or the reason for the bug, etc. You may have more information to add (see about | |||
creating bug reports below), in which case, go right ahead and add it. If you can't add more information | |||
you may just want to vote for this bug, and perhaps add yourself to the CC list to follow the progress of | |||
this bug. | |||
</p> | |||
<subsection name="Has It Been Reported?"> | |||
<p> | |||
If the current nightly build doesn't resolve your problem, it is | |||
possible that someone else has reported the issue. It is time to | |||
look at the <a href="http://nagoya.apache.org/bugzilla/"> | |||
Apache Bug Database</a>. This system is easy to use, and it will | |||
let you search the <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.bug_id"> | |||
currently open</a> and resolved bugs to see if your problem has | |||
already been reported. If your problem has been reported, you can | |||
see whether any of the developers have commented, suggesting | |||
workarounds, or the reason for the bug, etc. Or you may have | |||
information to add (see about creating and modifying bug reports | |||
below), in which case, go right ahead and add the information. | |||
If you don't have any additional information, you may just want | |||
to vote for this bug, and perhaps | |||
add yourself to the <code>CC</code> list to follow the progress | |||
of this bug. | |||
</p> | |||
</subsection> | |||
<subsection name="Filing a Bug report"> | |||
<p>By this time you may have decided that there is a bug in Ant. You have a few choices at this | |||
point. You can send an email to the ant-user mailing list to see if others have encountered your issue | |||
and how they may have worked around it. If after some discussion, you still feel you have a bug, it | |||
is time to create a bug report. This is a simple operation in the Bug Database. Please try to provide | |||
as much information as possible to assist the developers in resolving the bug. Please try to enter correct | |||
values for the various inputs when creating the bug. Once the bug is created you can add attachments to | |||
the bug report. | |||
</p> | |||
<p>What information should you include in your bug report? The easiest bugs to fix are those which are most | |||
easily reproducible, so if you can, it is really helpful to produce a small test case that exhibits the | |||
problem. In this case, you would attach the build file and other files necessary to reproduce the problem | |||
probably packed together in an archive. If you can't produce a test case, you should try to include a | |||
snippet from your build file and the relevant sections from the debug out from Ant. Try to include the | |||
header information where Ant states the version, the OS and VM information etc. As the debug output is | |||
likely to be very large, you should try to remove the output which is not relevant. Once the bug is | |||
entered into the Bug Database, you will be kept informed about progress on the bug. If you receive email | |||
asking for further information, please try to respond as it will aid in the resolution of your bug. | |||
</p> | |||
<subsection name="Filing a Bug Report"> | |||
<p> | |||
By this time, you may have decided that there is an unreported | |||
bug in Ant. You have a few choices at this point. You can send | |||
an email to the <code>ant-user</code> mailing list to see if | |||
others have encountered your issue and find out how they may | |||
have worked around it. If after some discussion, you feel it | |||
is time to create | |||
a bug report, this is a simple operation in the bug database. | |||
Please try to provide as much information as possible in order | |||
to assist the developers in resolving the bug. Please try to enter | |||
correct values for the various inputs when creating the bug, such | |||
as which version of Ant you are running, and on which platform, | |||
etc. Once the bug is created, you can also add attachments to | |||
the bug report. | |||
</p> | |||
<p> | |||
What information should you include in your bug report? The | |||
easiest bugs to fix are those that are most easily reproducible, | |||
so it is really helpful if you can produce a small test case that | |||
exhibits the problem. In this case, you would attach the build file | |||
and any other files necessary to reproduce the problem, probably | |||
packed together in an archive. If you can't produce a test case, | |||
you should try to include a snippet from your build file and the | |||
relevant sections from the verbose or debug output from Ant. Try | |||
to include the header information where Ant states the version, | |||
the OS and VM information, etc. As debug output is likely to be | |||
very large, it's best to remove any output that is not | |||
relevant. Once the bug is entered into the bug database, you | |||
will be kept informed by email about progress on the bug. If | |||
you receive email asking for further information, please try to | |||
respond, as it will aid in the resolution of your bug. | |||
</p> | |||
</subsection> | |||
<subsection name="Asking for an enhancement"> | |||
<p>Sometimes, you may find that Ant just doesn't do what you want. It isn't a bug, as such, since Ant | |||
is working the way it is supposed to. Perhaps it is something that hasn't been thought of yet, or | |||
a completely new task. For these situations you will want to raise an enhancement request. | |||
Enhancement requests are managed using the same Apache Bug Database described above. | |||
These are just a different type of report. If you look in the database, you will see that one of | |||
the severity settings for a bug is "Enhancement". So, just fill the bug report in, and | |||
in the description, state how you would like to have Ant enhanced. Again you should check whether | |||
there are any existing enhancment requests that cover your needs. If so, just add your vote to these. | |||
<subsection name="Asking for an Enhancement"> | |||
<p> | |||
Sometimes, you may find that Ant just doesn't do what you need it | |||
to. It isn't a bug, as such, since Ant is working the way it is | |||
supposed to work. Perhaps it is some additional functionality for | |||
a task that hasn't been thought of yet, or maybe a completely new | |||
task. For these situations, you will | |||
want to raise an <i>enhancement request</i>. Enhancement requests | |||
are managed using the same Apache Bug Database described above. | |||
These are just a different type of bug report. If you look in the | |||
bug database, you will see that one of the severity settings for | |||
a bug is "Enhancement". Just fill the bug report in, | |||
set the severity of the bug to "Enhancement", and | |||
state in the description how you would like to have Ant enhanced. | |||
Again, you should first check whether there are any existing | |||
enhancment requests that cover your needs. If so, just add your | |||
vote to these. | |||
</p> | |||
</subsection> | |||
<subsection name="Fixing the Bug"> | |||
<p>If you aren't satisfied just filing a bug report, you can try to find and fix the problem yourself. The | |||
best way to do that is by working against the latest code from CVS. Alternatively, you can work with the | |||
source code from the source distributions available on the Jakarta website. If you are going to tackle the | |||
issues at this level, you may want to discuss details on the ant-dev mailing list. Once you have a fix | |||
for the problem, you may either submit the patch to the ant-dev mailing list or enter into the Bug | |||
Database as described above, attaching the patch. Using the Bug database has the advantage of tracking | |||
the progress of your bug. | |||
<p> | |||
If you aren't satisfied with just filing a bug report, you can | |||
try to find the cause of the problem and provide a fix yourself. | |||
The best way to do that is by working with the latest code from CVS. | |||
Alternatively, you can work with the source code available from the | |||
<a href="http://jakarta.apache.org/builds/jakarta-ant/release/v1.4.1/src/"> | |||
source distributions</a>. If you | |||
are going to tackle the problem at this level, you may want to | |||
discuss some details first on the <code>ant-dev</code> mailing | |||
list. Once you have a fix for the problem, you may submit | |||
the fix as a <i>patch</i> to either the <code>ant-dev</code> mailing | |||
list, or enter the bug database as described above and attach the | |||
patch to the bug report. Using the bug database has the advantage | |||
of being able to track the progress of your patch. | |||
</p> | |||
<p> | |||
If you have a patch to submit and are sending it to the | |||
<code>ant-dev</code> mailing list, prefix "[PATCH]" | |||
to your message subject. Please include any relevant bug numbers. | |||
Patch files should be created with the <code>-u</code> | |||
option of the | |||
<code>diff</code> or <code>cvs diff</code> command. For | |||
example:<br></br><br></br> | |||
<font face="verdana" size="-1"> | |||
diff -u Javac.java.orig Javac.java > javac.diffs<br></br><br></br> | |||
</font> | |||
or, if you have source from CVS:<br></br><br></br> | |||
<font face="verdana" size="-1"> | |||
cvs diff -u Javac.java > javac.diffs<br></br><br></br> | |||
</font> | |||
Note: You should give your patch files meaningful names. | |||
This makes it easier for developers who need to apply a number | |||
of different patch files. | |||
</p> | |||
</subsection> | |||
@@ -129,6 +129,9 @@ | |||
<td align="left"> | |||
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a> | |||
</td> | |||
<td align="center"> | |||
<a href="http://www.javaworld.com"><img src="images/jw_ec_logo_finalist2002.gif" border="0"/></a> | |||
</td> | |||
<td align="right"> | |||
#set ( $logoString = $project.getChild("logo").getAttributeValue("href") ) | |||
#if ( $logoString.startsWith("/") ) | |||