You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

problems.html 28 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html lang="en">
  3. <!-- GENERATED FILE, DO NOT EDIT, EDIT THE XML FILE IN xdocs INSTEAD! -->
  4. <head>
  5. <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6. <title>Apache Ant - Having Problems?</title>
  7. <link type="text/css" href="./page.css" rel="stylesheet">
  8. <meta name="author" content="Conor MacNeill">
  9. <meta name="email" content="">
  10. </head>
  11. <body>
  12. <p class="navpath">
  13. <script src="./breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
  14. </p>
  15. <table summary="header with logos" width="100%" border="0" cellpadding="0" cellspacing="0">
  16. <tr>
  17. <td bgcolor="#294563"><a href="http://ant.apache.org/"><img border="0" alt="Apache Ant site" src="./images/group-logo.gif"></a></td><td width="100%" align="center" bgcolor="#294563"><a href="http://ant.apache.org/"><img alt="Apache Ant logo" border="0" src="./images/project-logo.gif"></a></td><td valign="top" rowspan="2" bgcolor="#294563">
  18. <form target="_blank" onsubmit="q.value = query.value + ' site:ant.apache.org'" action="http://www.google.com/search" method="get">
  19. <table summary="search" border="0" cellspacing="0" cellpadding="0" bgcolor="#4C6C8F">
  20. <tr>
  21. <td colspan="3"><img height="10" width="1" alt="" src="./images/spacer.gif"></td>
  22. </tr>
  23. <tr>
  24. <td><img height="1" width="1" alt="" src="./images/spacer.gif"></td>
  25. <td nowrap="nowrap">
  26. <input name="q" type="hidden">
  27. <input size="15" id="query" type="text">
  28. <img height="1" width="5" alt="" src="./images/spacer.gif">
  29. <input name="Search" value="Search" type="submit">
  30. <br>
  31. <font face="Arial, Helvetica, Sans-serif" size="2" color="white">
  32. the Apache Ant site
  33. </font></td><td><img height="1" width="1" alt="" src="./images/spacer.gif">
  34. </td>
  35. </tr>
  36. <tr>
  37. <td><img alt="" border="0" height="10" width="9" src="./images/search-left.gif"></td>
  38. <td><img height="1" width="1" alt="" src="./images/spacer.gif"></td>
  39. <td><img alt="" border="0" height="10" width="9" src="./images/search-right.gif"></td>
  40. </tr>
  41. </table>
  42. </form>
  43. </td><td bgcolor="#294563"><img height="10" width="10" alt="" src="./images/spacer.gif"></td>
  44. </tr>
  45. <tr>
  46. <td valign="bottom" bgcolor="#294563" colspan="2">
  47. <div class="tab">
  48. <table summary="tab bar" border="0" cellpadding="0" cellspacing="0">
  49. <tr>
  50. <td width="8"><img alt="" height="5" width="8" src="images/spacer.gif"></td><td valign="bottom">
  51. <table summary="selected tab" style="height: 1.5em" border="0" cellpadding="0" cellspacing="0">
  52. <tr>
  53. <td valign="top" width="5" bgcolor="#4C6C8F"><img height="5" width="5" alt="" src="./images/tabSel-left.gif"></td><td valign="middle" bgcolor="#4C6C8F"><font color="#ffffff" size="2" face="Arial, Helvetica, Sans-serif"><b>Home</b></font></td><td valign="top" width="5" bgcolor="#4C6C8F"><img height="5" width="5" alt="" src="./images/tabSel-right.gif"></td>
  54. </tr>
  55. </table>
  56. </td>
  57. <td width="5"><img alt="" height="8" width="8" src="./images/spacer.gif"></td><td valign="bottom">
  58. <table summary="non selected tab" style="height: 1.4em" border="0" cellpadding="0" cellspacing="0">
  59. <tr>
  60. <td valign="top" width="5" bgcolor="#B2C4E0"><img height="5" width="5" alt="" src="./images/tab-left.gif"></td><td valign="middle" bgcolor="#B2C4E0"><a href="./projects/index.html"><font size="2" face="Arial, Helvetica, Sans-serif">Projects</font></a></td><td valign="top" width="5" bgcolor="#B2C4E0"><img height="5" width="5" alt="" src="./images/tab-right.gif"></td>
  61. </tr>
  62. </table>
  63. </td>
  64. </tr>
  65. </table>
  66. </div>
  67. </td><td bgcolor="#294563"><img alt="" width="1" height="1" src="./images/spacer.gif"></td>
  68. </tr>
  69. <tr>
  70. <td bgcolor="#4C6C8F" colspan="4"><img width="1" height="10" alt="" src="./images/spacer.gif"></td>
  71. </tr>
  72. </table>
  73. <table summary="page content" bgcolor="#ffffff" width="100%" border="0" cellpadding="0" cellspacing="0">
  74. <tr>
  75. <td valign="top">
  76. <table summary="menu" border="0" cellspacing="0" cellpadding="0">
  77. <tr>
  78. <td rowspan="3" valign="top">
  79. <table summary="blue line" border="0" cellpadding="0" cellspacing="0">
  80. <tr>
  81. <td bgcolor="#294563"><img width="10" height="1" alt="" src="./images/spacer.gif"></td>
  82. </tr>
  83. <tr>
  84. <td bgcolor="#CFDCED"><font color="#4C6C8F" size="4" face="Arial, Helvetica, Sans-serif">&nbsp;</font></td>
  85. </tr>
  86. <tr>
  87. <td bgcolor="#294563"><img width="10" height="1" alt="" src="./images/spacer.gif"></td>
  88. </tr>
  89. </table>
  90. </td>
  91. <td bgcolor="#294563"><img width="1" height="1" alt="" src="./images/spacer.gif"></td>
  92. <td valign="bottom" bgcolor="#4C6C8F"><img width="10" height="10" alt="" src="./images/spacer.gif"></td>
  93. <td nowrap="nowrap" valign="top" bgcolor="#4C6C8F">
  94. <div class="menu"><ul>
  95. <li><font color="#CFDCED">Apache Ant</font>
  96. <ul>
  97. <li>
  98. <a href="./index.html">Welcome</a>
  99. </li>
  100. <li>
  101. <a href="./license.html">License</a>
  102. </li>
  103. <li>
  104. <a href="./antnews.html">News</a>
  105. </li>
  106. </ul>
  107. </li>
  108. <li><font color="#CFDCED">Documentation</font>
  109. <ul>
  110. <li>
  111. <a href="./manual/index.html">Manual</a>
  112. </li>
  113. <li>
  114. <a href="./projects.html">Related Projects</a>
  115. </li>
  116. <li>
  117. <a href="./external.html">External Tools and Tasks</a>
  118. </li>
  119. <li>
  120. <a href="./resources.html">Resources</a>
  121. </li>
  122. <li>
  123. <a href="./faq.html">Frequently Asked Questions</a>
  124. </li>
  125. <li>
  126. <span class="sel"><font color="#ffcc00">Having Problems?</font></span>
  127. </li>
  128. </ul>
  129. </li>
  130. <li><font color="#CFDCED">Download</font>
  131. <ul>
  132. <li>
  133. <a href="http://ant.apache.org/bindownload.cgi">Binary Distributions</a>
  134. </li>
  135. <li>
  136. <a href="http://ant.apache.org/srcdownload.cgi">Source Distributions</a>
  137. </li>
  138. </ul>
  139. </li>
  140. <li><font color="#CFDCED">Get Involved</font>
  141. <ul>
  142. <li>
  143. <a href="./mail.html">Mailing Lists</a>
  144. </li>
  145. <li>
  146. <a href="./cvs.html">CVS Repositories</a>
  147. </li>
  148. <li>
  149. <a href="http://issues.apache.org/bugzilla/enter_bug.cgi?product=Ant">Bug Database</a>
  150. </li>
  151. <li>
  152. <a href="http://issues.apache.org/bugzilla/enter_bug.cgi?product=Ant&amp;bug_severity=Enhancement">Enhancement Requests</a>
  153. </li>
  154. </ul>
  155. </li>
  156. <li><font color="#CFDCED">Project Management</font>
  157. <ul>
  158. <li>
  159. <a href="./contributors.html">Contributors</a>
  160. </li>
  161. <li>
  162. <a href="./mission.html">Apache Ant Mission</a>
  163. </li>
  164. <li>
  165. <a href="./guidelines.html">Project Guidelines</a>
  166. </li>
  167. <li>
  168. <a href="./legal.html">Legal</a>
  169. </li>
  170. </ul>
  171. </li>
  172. </ul></div>
  173. </td>
  174. <td valign="bottom" bgcolor="#4C6C8F"><img width="10" height="10" alt="" src="./images/spacer.gif"></td>
  175. <td bgcolor="#294563"><img width="1" height="1" alt="" src="./images/spacer.gif"></td>
  176. </tr>
  177. <tr>
  178. <td valign="bottom" align="left" colspan="2" rowspan="2" bgcolor="#4C6C8F">
  179. <img height="10" width="10" border="0" alt="" src="./images/menu-left.gif">
  180. </td>
  181. <td bgcolor="#4C6C8F"><img height="10" width="10" border="0" alt="" src="./images/spacer.gif"></td>
  182. <td valign="bottom" align="right" colspan="2" rowspan="2" bgcolor="#4C6C8F">
  183. <img height="10" width="10" border="0" alt="" src="./images/menu-right.gif">
  184. </td>
  185. </tr>
  186. <tr>
  187. <td height="1" bgcolor="#294563"><img width="1" height="1" alt="" src="./images/spacer.gif"></td>
  188. </tr>
  189. </table>
  190. </td><td valign="top" width="100%">
  191. <table summary="content" width="100%" border="0" cellpadding="0" cellspacing="0">
  192. <tr>
  193. <td colspan="4" bgcolor="#294563"><img width="10" height="1" alt="" src="./images/spacer.gif"></td>
  194. </tr>
  195. <tr>
  196. <td align="left" width="10" bgcolor="#CFDCED"><img width="10" height="1" alt="" src="./images/spacer.gif"></td>
  197. <td align="left" width="50%" bgcolor="#CFDCED"><font color="#4C6C8F" size="3" face="Arial, Helvetica, Sans-serif">
  198. &nbsp;
  199. </font><img width="10" height="8" alt="" src="./images/spacer.gif"></td>
  200. <td align="right" width="50%" bgcolor="#CFDCED">
  201. <font color="#4C6C8F" size="3" face="Arial, Helvetica, Sans-serif">
  202. &nbsp;
  203. </font>
  204. <img width="10" height="8" alt="" src="./images/spacer.gif">
  205. </td>
  206. <td width="10" bgcolor="#CFDCED"><img width="10" height="1" alt="" src="./images/spacer.gif"></td>
  207. </tr>
  208. <tr>
  209. <td colspan="4" bgcolor="#294563"><img width="10" height="1" alt="" src="./images/spacer.gif"></td>
  210. </tr>
  211. <tr>
  212. <td align="left" width="10"><img width="10" height="1" alt="" src="./images/spacer.gif"></td><td align="left" width="100%">
  213. <div class="content">
  214. <h1 class="title">Having Problems?</h1>
  215. <h3 class="section">
  216. <a name="Having Problems?"></a>
  217. Having Problems?
  218. </h3>
  219. <p>
  220. This page details some steps you can take to try and resolve
  221. any problems you may be having with Ant. If you find you can't
  222. resolve the problem, then this page will help you collect some of
  223. the relevant information to provide in a bug report. This information
  224. will help the Ant developers understand and resolve the problem.
  225. Of course, not all the steps here will make sense for every problem
  226. you may encounter - these are just some suggestions to point
  227. you in the right direction.
  228. </p>
  229. <h4 class="subsection">
  230. <a name="Read the Manual"></a>
  231. Read the Manual
  232. </h4>
  233. <p>
  234. The first step to take when you have a problem with Ant is to read
  235. the <a href="manual/index.html">manual</a> entry for the task or
  236. concept that is giving you trouble. In particular, check the
  237. meaning of a task's attributes and nested elements. Perhaps an
  238. attribute is available that would provide the behavior you require.
  239. If you have problems with the manual itself, you can submit a
  240. documentation bug report (see below) to help us improve the Ant
  241. documentation.
  242. </p>
  243. <h4 class="subsection">
  244. <a name="Examine Debug Output"></a>
  245. Examine Debug Output
  246. </h4>
  247. <p>
  248. If you're still having a problem, the next step is to try and
  249. gather additional information about what Ant is doing.
  250. Try running Ant with the <code>verbose</code> flag:
  251. <br /><br />
  252. <font face="verdana" size="-1">ant -verbose</font>
  253. <br /><br />
  254. or
  255. <br /><br />
  256. <font face="verdana" size="-1">ant -v</font>
  257. <br /><br />
  258. This will produce output that starts like the following:</p>
  259. <table class="ForrestTable" cellspacing="1" cellpadding="4">
  260. <tr>
  261. <td colspan="1" rowspan="1"
  262. valign="top" align="left">
  263. Ant version 1.4.1 compiled on October 11 2001<br />
  264. Buildfile: build.xml<br />
  265. Detected Java version: 1.3 in: D:\usr\local\java\jdk13\jre<br />
  266. Detected OS: Windows NT<br />
  267. parsing buildfile D:\ant\build.xml
  268. with URI = file:D:/ant/build.xml<br />
  269. Project base dir set to: D:\ant<br />
  270. [property] Loading Environment env.<br />
  271. [property] Loading D:\ant\conf.properties<br />
  272. Build sequence for target 'debug' is [debug]<br />
  273. Complete build sequence is [debug, gensrc, compile, jar, test]<br />
  274. . . .<br />
  275. </td>
  276. </tr>
  277. </table>
  278. <p>
  279. You should be able to see from the trace more about what Ant
  280. is doing and why it's taking a particular course of action.
  281. If you need even more information, you can use the
  282. <code>-debug</code> flag rather than
  283. <code>-verbose</code>.
  284. This will generally produce so much
  285. output that you may want to save the output to a file and
  286. analyze it in an editor. You can save the output using the
  287. <code>-logfile &lt;filename&gt;</code> flag, or
  288. using redirection.
  289. </p>
  290. <p>
  291. Once you have all this debug information, how can you use it
  292. to solve your problem? That will depend on the task in question
  293. and the nature of your problem. Each task logs different aspects
  294. of its operation, but it should give you an idea of what is going
  295. on. For example, the <code>&lt;javac&gt;</code> task logs the
  296. reasons why it
  297. chooses to compile particular class files and not others, along
  298. with which compiler it is using and the arguments it will pass
  299. to that compiler. The following partial trace shows why
  300. <code>&lt;javac&gt;</code> is adding one class file but
  301. skipping another.
  302. This is followed by which compiler it will be using, the
  303. arguments that will get passed to the compiler,
  304. and a list of all the class files to be compiled.
  305. </p>
  306. <table class="ForrestTable" cellspacing="1" cellpadding="4">
  307. <tr>
  308. <td colspan="1" rowspan="1"
  309. valign="top" align="left">
  310. [javac] Test.java omitted as D:\classes\Test.class is up to date.<br />
  311. [javac] Unset.java added as D:\classes\Unset.class is outdated.<br />
  312. [javac] Compiling 1 source file to D:\classes<br />
  313. [javac] Using classic compiler<br />
  314. [javac] Compilation args: -d D:\classes -classpath D:\classes;<br />
  315. D:\jdk118\classes.zip; -sourcepath D:\src\java -g:none<br />
  316. [javac] File to be compiled:<br />
  317. D:\src\java\Unset.java<br />
  318. </td>
  319. </tr>
  320. </table>
  321. <p>
  322. In many cases, Ant tasks are wrappers around OS commands or
  323. other Java classes. In debug mode, many of these tasks will
  324. print out the equivalent command line, as the
  325. <code>&lt;javac&gt;</code> task
  326. output does. If you are having a problem, it is often useful to
  327. run the command directly from the command line, in the same way
  328. Ant is running it, and see if the problem occurs from there
  329. as well. The problem may be in the command that is being run,
  330. or it may be in the way the Ant task is running the command.
  331. You can also see the effect of changing attribute values on the
  332. generated command line. This can help you to understand whether
  333. you are using the correct attributes and values.
  334. </p>
  335. <h4 class="subsection">
  336. <a name="Has It Been Fixed?"></a>
  337. Has It Been Fixed?
  338. </h4>
  339. <p>
  340. After examining the debug output, if you still believe that the
  341. problem you are having is caused by Ant, chances are that someone
  342. else may have already encountered this problem, and perhaps it has
  343. been fixed. The next step, therefore, may be to try a nightly build
  344. of Ant to see if the problem has been fixed. Nightly builds for Ant
  345. are available from the
  346. <a href="http://cvs.apache.org/builds/ant/nightly/">
  347. Ant web site</a>. While Ant nightly builds are typically quite
  348. stable and are used by
  349. <a href="http://cvs.apache.org/builds/gump/latest/">Gump</a>
  350. to build many other Jakarta projects, these builds should
  351. nonetheless be treated as experimental. Note that nightly builds
  352. do not build many of the optional tasks the come with Ant.
  353. A snapshot of these optional tasks is occasionally uploaded to
  354. the nightly download
  355. <a href="http://cvs.apache.org/builds/ant/nightly/optional/">
  356. area</a>. However, even this snapshot does not contain every
  357. optional task.
  358. </p>
  359. <h4 class="subsection">
  360. <a name="Has It Been Reported?"></a>
  361. Has It Been Reported?
  362. </h4>
  363. <p>
  364. If the current nightly build doesn't resolve your problem, it is
  365. possible that someone else has reported the issue. It is time to
  366. look at the <a href="http://issues.apache.org/bugzilla/">
  367. Apache Bug Database</a>. This system is easy to use, and it will
  368. let you search the <a href="http://issues.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;email1=&amp;emailtype1=substring&amp;emailassigned_to1=1&amp;email2=&amp;emailtype2=substring&amp;emailreporter2=1&amp;bugidtype=include&amp;bug_id=&amp;changedin=&amp;votes=&amp;chfieldfrom=&amp;chfieldto=Now&amp;chfieldvalue=&amp;product=Ant&amp;short_desc=&amp;short_desc_type=substring&amp;long_desc=&amp;long_desc_type=substring&amp;bug_file_loc=&amp;bug_file_loc_type=substring&amp;keywords=&amp;keywords_type=anywords&amp;field0-0-0=noop&amp;type0-0-0=noop&amp;value0-0-0=&amp;order=bugs.bug_id">
  369. currently open</a> and resolved bugs to see if your problem has
  370. already been reported. If your problem has been reported, you can
  371. see whether any of the developers have commented, suggesting
  372. workarounds, or the reason for the bug, etc. Or you may have
  373. information to add (see about creating and modifying bug reports
  374. below), in which case, go right ahead and add the information.
  375. If you don't have any additional information, you may just want
  376. to vote for this bug, and perhaps
  377. add yourself to the <code>CC</code> list to follow the progress
  378. of this bug.
  379. </p>
  380. <h4 class="subsection">
  381. <a name="Filing a Bug Report"></a>
  382. Filing a Bug Report
  383. </h4>
  384. <p>
  385. By this time, you may have decided that there is an unreported
  386. bug in Ant. You have a few choices at this point. You can send
  387. an email to the <code>user</code> mailing list
  388. to see if
  389. others have encountered your issue and find out how they may
  390. have worked around it. If after some discussion, you feel it
  391. is time to create
  392. a bug report, this is a simple operation in the bug database.
  393. Please try to provide as much information as possible in order
  394. to assist the developers in resolving the bug. Please try to enter
  395. correct values for the various inputs when creating the bug, such
  396. as which version of Ant you are running, and on which platform,
  397. etc. Once the bug is created, you can also add attachments to
  398. the bug report.
  399. </p>
  400. <p>
  401. What information should you include in your bug report? The
  402. easiest bugs to fix are those that are most easily reproducible,
  403. so it is really helpful if you can produce a small test case that
  404. exhibits the problem. In this case, you would attach the build file
  405. and any other files necessary to reproduce the problem, probably
  406. packed together in an archive. If you can't produce a test case,
  407. you should try to include a snippet from your build file and the
  408. relevant sections from the verbose or debug output from Ant. Try
  409. to include the header information where Ant states the version,
  410. the OS and VM information, etc. As debug output is likely to be
  411. very large, it's best to remove any output that is not
  412. relevant. Once the bug is entered into the bug database, you
  413. will be kept informed by email about progress on the bug. If
  414. you receive email asking for further information, please try to
  415. respond, as it will aid in the resolution of your bug.
  416. </p>
  417. <h4 class="subsection">
  418. <a name="Asking for an Enhancement"></a>
  419. Asking for an Enhancement
  420. </h4>
  421. <p>
  422. Sometimes, you may find that Ant just doesn't do what you need it
  423. to. It isn't a bug, as such, since Ant is working the way it is
  424. supposed to work. Perhaps it is some additional functionality for
  425. a task that hasn't been thought of yet, or maybe a completely new
  426. task. For these situations, you will
  427. want to raise an <i>enhancement request</i>. Enhancement requests
  428. are managed using the same Apache Bug Database described above.
  429. These are just a different type of bug report. If you look in the
  430. bug database, you will see that one of the severity settings for
  431. a bug is "Enhancement". Just fill the bug report in,
  432. set the severity of the bug to "Enhancement", and
  433. state in the description how you would like to have Ant enhanced.
  434. Again, you should first check whether there are any existing
  435. enhancment requests that cover your needs. If so, just add your
  436. vote to these.
  437. </p>
  438. <h4 class="subsection">
  439. <a name="Fixing the Bug"></a>
  440. Fixing the Bug
  441. </h4>
  442. <p>
  443. If you aren't satisfied with just filing a bug report, you can
  444. try to find the cause of the problem and provide a fix yourself.
  445. The best way to do that is by working with the latest code from CVS.
  446. Alternatively, you can work with the source code available from the
  447. <a href="http://ant.apache.org/srcdownload.cgi">
  448. source distributions</a>. If you
  449. are going to tackle the problem at this level, you may want to
  450. discuss some details first on the <code>dev</code>
  451. mailing list. Once you have a fix for the problem, you may submit
  452. the fix as a <i>patch</i> to either the
  453. <code>dev</code> mailing
  454. list, or enter the bug database as described above and attach the
  455. patch to the bug report. Using the bug database has the advantage
  456. of being able to track the progress of your patch.
  457. </p>
  458. <p>
  459. If you have a patch to submit and are sending it to the
  460. <code>dev</code> mailing list,
  461. prefix "[PATCH]"
  462. to your message subject. Please include any relevant bug numbers.
  463. Patch files should be created with the <code>-u</code>
  464. option of the
  465. <code>diff</code> or <code>cvs diff</code> command. For
  466. example:<br /><br />
  467. <font face="verdana" size="-1">
  468. diff -u Javac.java.orig Javac.java &gt; javac.diffs<br /><br />
  469. </font>
  470. or, if you have source from CVS:<br /><br />
  471. <font face="verdana" size="-1">
  472. cvs diff -u Javac.java &gt; javac.diffs<br /><br />
  473. </font>
  474. Note: You should give your patch files meaningful names.
  475. This makes it easier for developers who need to apply a number
  476. of different patch files.
  477. </p>
  478. </div>
  479. </td><td width="10"><img width="10" height="4" alt="" src="./images/spacer.gif"></td>
  480. </tr>
  481. </table>
  482. </td>
  483. </tr>
  484. </table>
  485. <p class="copyright">
  486. Copyright &copy; 2000-2003&nbsp;The Apache Software Foundation. All rights reserved.
  487. <script type="text/javascript" language="JavaScript"><!--
  488. document.write(" - "+"Last Published: " + document.lastModified);
  489. // -->
  490. </script>
  491. </p>
  492. <!--
  493. <table summary="footer" cellspacing="0" cellpadding="0" width="100%" border="0">
  494. <tr>
  495. <td colspan="2" height="1" bgcolor="#4C6C8F">
  496. <img height="1" width="1" alt="" src="./images/spacer.gif">
  497. <a href="./images/label.gif"></a>
  498. <a href="./images/page.gif"></a>
  499. <a href="./images/chapter.gif"></a>
  500. <a href="./images/chapter_open.gif"></a>
  501. <a href="./images/current.gif"></a>
  502. <a href="/favicon.ico"></a>
  503. </td>
  504. </tr>
  505. <tr>
  506. <td colspan="2" bgcolor="#CFDCED" class="copyright" align="center">
  507. <font size="2" face="Arial, Helvetica, Sans-Serif">
  508. Copyright &copy; 2000-2003&nbsp;The Apache Software Foundation. All rights reserved.
  509. </font>
  510. </td>
  511. </tr>
  512. </table>
  513. -->
  514. </body>
  515. </html>