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.

resources.html 45 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041
  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 - Resources</title>
  7. <link type="text/css" href="./page.css" rel="stylesheet">
  8. <meta name="author" content="Stefan Bodewig">
  9. <meta name="email" content="bodewig@apache.org">
  10. </head>
  11. <body>
  12. <p class="navpath">
  13. <script src="./breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
  14. </p>
  15. <div class="logobar">
  16. <table width="100%" border="0" cellspacing="0" cellpadding="0">
  17. <tr>
  18. <td align="left"><img border="0" alt="Apache Ant site" src="./images/group-logo.gif"></td>
  19. <td align="center" width="100%"><img alt="Apache Ant logo" border="0" src="./images/project-logo.gif"></td>
  20. <td align="right">
  21. <form target="_blank" onsubmit="q.value = query.value + ' site:ant.apache.org'" action="http://www.google.com/search" method="get">
  22. <table summary="search" border="0" cellspacing="0" cellpadding="0" bgcolor="#4C6C8F">
  23. <tr>
  24. <td colspan="3"><img height="10" width="1" alt="" src="./images/spacer.gif"></td>
  25. </tr>
  26. <tr>
  27. <td><img height="1" width="1" alt="" src="./images/spacer.gif"></td>
  28. <td nowrap="nowrap" class="searchcaption">
  29. <input name="q" type="hidden">
  30. <input size="15" id="query" type="text">
  31. <img height="1" width="5" alt="" src="./images/spacer.gif">
  32. <input name="Search" value="Search" type="submit">
  33. <br>
  34. the Apache Ant site
  35. </td>
  36. <td><img height="1" width="1" alt="" src="./images/spacer.gif"></td>
  37. </tr>
  38. <tr>
  39. <td><img alt="" border="0" height="10" width="9" src="./images/search-left.gif"></td>
  40. <td><img height="1" width="1" alt="" src="./images/spacer.gif"></td>
  41. <td><img alt="" border="0" height="10" width="9" src="./images/search-right.gif"></td>
  42. </tr>
  43. </table>
  44. </form>
  45. </td>
  46. </tr>
  47. </table>
  48. </div>
  49. <div class="tab">
  50. <table summary="tab bar" border="0" cellpadding="0" cellspacing="0">
  51. <tr>
  52. <td width="8"><img alt="" height="5" width="8" src="./images/spacer.gif"></td><td valign="bottom">
  53. <table summary="selected tab" style="height: 1.5em" border="0" cellpadding="0" cellspacing="0">
  54. <tr>
  55. <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>
  56. </tr>
  57. </table>
  58. </td>
  59. <td width="5"><img alt="" height="8" width="8" src="./images/spacer.gif"></td><td valign="bottom">
  60. <table summary="non selected tab" style="height: 1.4em" border="0" cellpadding="0" cellspacing="0">
  61. <tr>
  62. <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>
  63. </tr>
  64. </table>
  65. </td>
  66. </tr>
  67. </table>
  68. </div>
  69. <div class="bluebar"></div>
  70. <div class="menucontainer">
  71. <div class="menu">
  72. <ul>
  73. <li class="menuheader">Apache Ant
  74. <ul>
  75. <li>
  76. <a href="./index.html">Welcome</a>
  77. </li>
  78. <li>
  79. <a href="./license.html">License</a>
  80. </li>
  81. <li>
  82. <a href="./antnews.html">News</a>
  83. </li>
  84. </ul>
  85. </li>
  86. <li class="menuheader">Documentation
  87. <ul>
  88. <li>
  89. <a href="./manual/index.html">Manual</a>
  90. </li>
  91. <li>
  92. <a href="./projects.html">Related Projects</a>
  93. </li>
  94. <li>
  95. <a href="./external.html">External Tools and Tasks</a>
  96. </li>
  97. <li>
  98. <span class="sel">Resources</span>
  99. </li>
  100. <li>
  101. <a href="./faq.html">Frequently Asked Questions</a>
  102. </li>
  103. <li>
  104. <a href="./problems.html">Having Problems?</a>
  105. </li>
  106. </ul>
  107. </li>
  108. <li class="menuheader">Download
  109. <ul>
  110. <li>
  111. <a href="http://ant.apache.org/bindownload.cgi">Binary Distributions</a>
  112. </li>
  113. <li>
  114. <a href="http://ant.apache.org/srcdownload.cgi">Source Distributions</a>
  115. </li>
  116. </ul>
  117. </li>
  118. <li class="menuheader">Contributing
  119. <ul>
  120. <li>
  121. <a href="./mail.html">Mailing Lists</a>
  122. </li>
  123. <li>
  124. <a href="./cvs.html">CVS Repositories</a>
  125. </li>
  126. <li>
  127. <a href="http://issues.apache.org/bugzilla/enter_bug.cgi?product=Ant">Bug Database</a>
  128. </li>
  129. <li>
  130. <a href="http://issues.apache.org/bugzilla/enter_bug.cgi?product=Ant&amp;bug_severity=Enhancement">Enhancement Requests</a>
  131. </li>
  132. <li>
  133. <a href="http://www.apache.org/foundation/contributing.html">Donations</a>
  134. </li>
  135. </ul>
  136. </li>
  137. <li class="menuheader">Project Management
  138. <ul>
  139. <li>
  140. <a href="./contributors.html">Contributors</a>
  141. </li>
  142. <li>
  143. <a href="./mission.html">Apache Ant Mission</a>
  144. </li>
  145. <li>
  146. <a href="./bylaws.html">Project Bylaws</a>
  147. </li>
  148. <li>
  149. <a href="./legal.html">Legal</a>
  150. </li>
  151. </ul>
  152. </li>
  153. </ul>
  154. </div>
  155. <img style="float: left" height="10" width="10" border="0" alt="" src="./images/menu-left.gif">
  156. <img style="float: right" height="10" width="10" border="0" alt="" src="./images/menu-right.gif">
  157. </div>
  158. <div class="lightbluebar">&nbsp;</div>
  159. <div class="main">
  160. <div class="content">
  161. <h1 class="title">Resources</h1>
  162. <h3 class="section">
  163. <a name="FAQs"></a>
  164. FAQs
  165. </h3>
  166. <h4 class="subsection">
  167. <a name="At Ant's website"></a>
  168. At Ant's website
  169. </h4>
  170. <p>Starting with the release of Ant 1.4 the Ant's FAQ is
  171. bundled with the distribution, the most recent version can
  172. always be found at the website.</p>
  173. <table class="externals" cellspacing="1" cellpadding="4">
  174. <tr>
  175. <th colspan="1" rowspan="1"
  176. valign="top" align="left">
  177. FAQ:
  178. </th>
  179. <td colspan="1" rowspan="1"
  180. valign="top" align="left">
  181. <a href="faq.html">http://ant.apache.org/faq.html</a>
  182. </td>
  183. </tr>
  184. </table>
  185. <h4 class="subsection">
  186. <a name="jGuru"></a>
  187. jGuru
  188. </h4>
  189. <p>jGuru hosts an interactive Ant discussion forum and FAQ system</p>
  190. <table class="externals" cellspacing="1" cellpadding="4">
  191. <tr>
  192. <th colspan="1" rowspan="1"
  193. valign="top" align="left">
  194. Forum:
  195. </th>
  196. <td colspan="1" rowspan="1"
  197. valign="top" align="left">
  198. <a href="http://www.jguru.com/forums/home.jsp?topic=Ant">http://www.jguru.com/forums/home.jsp?topic=Ant</a>
  199. </td>
  200. </tr>
  201. <tr>
  202. <th colspan="1" rowspan="1"
  203. valign="top" align="left">
  204. FAQ:
  205. </th>
  206. <td colspan="1" rowspan="1"
  207. valign="top" align="left">
  208. <a href="http://www.jguru.com/faq/home.jsp?topic=Ant">http://www.jguru.com/faq/home.jsp?topic=Ant</a>
  209. </td>
  210. </tr>
  211. </table>
  212. <h4 class="subsection">
  213. <a name="FAQ about Borland Application Server tasks"></a>
  214. FAQ about Borland Application Server tasks
  215. </h4>
  216. <p>Benoit Moussaud, the original author if the Borland
  217. Application Server specific <a href="manual/OptionalTasks/ejb.html#ejbtasks">EJB tasks</a> has put
  218. together a FAQ for this specific subtask.</p>
  219. <table class="externals" cellspacing="1" cellpadding="4">
  220. <tr>
  221. <th colspan="1" rowspan="1"
  222. valign="top" align="left">
  223. FAQ:
  224. </th>
  225. <td colspan="1" rowspan="1"
  226. valign="top" align="left">
  227. <a href="http://www.moussaud.org/ejbjar.html">http://www.moussaud.org/ejbjar.html</a>
  228. </td>
  229. </tr>
  230. </table>
  231. <h3 class="section">
  232. <a name="Books"></a>
  233. Books
  234. </h3>
  235. <p>Listed by descending publication date.</p>
  236. <h4 class="subsection">
  237. <a name="Extreme Programming with Ant"></a>
  238. Extreme Programming with Ant
  239. </h4>
  240. <p> This book shows how to implement an XP project using Ant 1.5.3, and many other 3rd party tools. Covers:</p>
  241. <ul>
  242. <li>The fundamentals of Ant: concepts, core and optional tasks</li>
  243. <li>How to write custom Ant components, including custom Tasks, Loggers, Listeners, Input Handlers, Selectors, Filters, Mappers and Data Types</li>
  244. <li>Mitigating risks by creating spike tests with Ant buildfiles</li>
  245. <li>Add CVS version control and testing with JUnit</li>
  246. <li>Automate nightly builds and reporting</li>
  247. <li>Deploy applications dynamically using XDoclet</li>
  248. <li>Enforcing Code Standards with Jalopy, PMD, CheckStyle, iContract, JDepend</li>
  249. <li>Using Remote Ant (Rant) and CruiseControl</li>
  250. <li>Generating project documentation</li>
  251. <li>Adapting an XP process for use by other teams or across an enterprise</li>
  252. <li>Custom Task examples to generating UML diagrams, creating reports and metrics on-the-fly</li>
  253. <li>Follows a case-study of a team that implements an XP Project</li>
  254. </ul>
  255. <table class="externals" cellspacing="1" cellpadding="4">
  256. <tr>
  257. <th colspan="1" rowspan="1"
  258. valign="top" align="left">
  259. Authors:
  260. </th>
  261. <td colspan="1" rowspan="1"
  262. valign="top" align="left">
  263. Glenn Niemeyer and Jeremy Poteet
  264. </td>
  265. </tr>
  266. <tr>
  267. <th colspan="1" rowspan="1"
  268. valign="top" align="left">
  269. URL:
  270. </th>
  271. <td colspan="1" rowspan="1"
  272. valign="top" align="left">
  273. <a href="http://www.sams.com/catalog/product.asp?product_id=%7BFB825A48-BC04-4C55-BD8C-DF93C6BBF920%7D">http://www.sams.com/catalog/product.asp?product_id=%7BFB825A48-BC04-4C55-BD8C-DF93C6BBF920%7D</a>
  274. </td>
  275. </tr>
  276. </table>
  277. <h4 class="subsection">
  278. <a name="Ant. Das Java-Build-Tool in der Praxis"></a>
  279. Ant. Das Java-Build-Tool in der Praxis
  280. </h4>
  281. <p>A German language book on Ant that covers Ant 1.5.
  282. This is the original description:</p>
  283. <pre class="code">
  284. Das Build-Tool Ant ist das Open-Source-Werkzeug, das den Entwicklungsprozess einer Java-
  285. oder J2EE-Anwendung wesentlich vereinfacht. Gesteuert durch XML-basierte Skripte f�hrt es
  286. nahezu alle Aufgaben aus, die nach dem Kodieren einer Anwendung anfallen.</pre>
  287. <p>Some topics:</p>
  288. <ul>
  289. <li>creating archives (zip, jar)</li>
  290. <li>call the java compiler</li>
  291. <li>edit property files</li>
  292. <li>file operation</li>
  293. <li>source code control systems</li>
  294. </ul>
  295. <table class="externals" cellspacing="1" cellpadding="4">
  296. <tr>
  297. <th colspan="1" rowspan="1"
  298. valign="top" align="left">
  299. Authors:
  300. </th>
  301. <td colspan="1" rowspan="1"
  302. valign="top" align="left">
  303. Bernd Matzke
  304. </td>
  305. </tr>
  306. <tr>
  307. <th colspan="1" rowspan="1"
  308. valign="top" align="left">
  309. URL:
  310. </th>
  311. <td colspan="1" rowspan="1"
  312. valign="top" align="left">
  313. <a href="http://www.addison-wesley.de/main/main.asp?page=home/bookdetails&amp;ProductID=13459">http://www.addison-wesley.de/main/main.asp?page=home/bookdetails&amp;ProductID=13459</a>
  314. </td>
  315. </tr>
  316. </table>
  317. <h4 class="subsection">
  318. <a name="Java Development with Ant"></a>
  319. Java Development with Ant
  320. </h4>
  321. <p>Covers Ant 1.5, including:</p>
  322. <ul>
  323. <li>The new Ant 1.5 features</li>
  324. <li>Ant's datatypes and property handling</li>
  325. <li>JUnit testing and reporting</li>
  326. <li>Continuous integration techniques</li>
  327. <li>XDoclet for attribute-oriented programming</li>
  328. <li>EJB generation, building, and packaging</li>
  329. <li>Writing and testing native code</li>
  330. <li>Building Web Services with Apache Axis</li>
  331. <li>Deploying your system to multiple remote servers</li>
  332. <li>Using and writing
  333. <ul>
  334. <li>Loggers</li>
  335. <li>Listeners</li>
  336. <li>Selectors</li>
  337. <li>Custom tasks</li>
  338. </ul>
  339. </li>
  340. </ul>
  341. <table class="externals" cellspacing="1" cellpadding="4">
  342. <tr>
  343. <th colspan="1" rowspan="1"
  344. valign="top" align="left">
  345. Authors:
  346. </th>
  347. <td colspan="1" rowspan="1"
  348. valign="top" align="left">
  349. Erik Hatcher and Steve Loughran
  350. </td>
  351. </tr>
  352. <tr>
  353. <th colspan="1" rowspan="1"
  354. valign="top" align="left">
  355. URL:
  356. </th>
  357. <td colspan="1" rowspan="1"
  358. valign="top" align="left">
  359. <a href="http://www.manning.com/antbook/">http://www.manning.com/antbook/</a>
  360. </td>
  361. </tr>
  362. </table>
  363. <h4 class="subsection">
  364. <a name="Ant: The Definitive Guide"></a>
  365. Ant: The Definitive Guide
  366. </h4>
  367. <p>Covers Ant release 1.4.1.</p>
  368. <table class="externals" cellspacing="1" cellpadding="4">
  369. <tr>
  370. <th colspan="1" rowspan="1"
  371. valign="top" align="left">
  372. Authors:
  373. </th>
  374. <td colspan="1" rowspan="1"
  375. valign="top" align="left">
  376. Jesse E. Tilly and Eric M. Burke
  377. </td>
  378. </tr>
  379. <tr>
  380. <th colspan="1" rowspan="1"
  381. valign="top" align="left">
  382. URL:
  383. </th>
  384. <td colspan="1" rowspan="1"
  385. valign="top" align="left">
  386. <a href="http://www.oreilly.com/catalog/anttdg/">http://www.oreilly.com/catalog/anttdg/</a>
  387. </td>
  388. </tr>
  389. </table>
  390. <h4 class="subsection">
  391. <a name="Ant. Kurz und Gut."></a>
  392. Ant. Kurz und Gut.
  393. </h4>
  394. <p>A German language short reference for Ant that covers Ant
  395. 1.4. This is the original description:</p>
  396. <pre class="code">
  397. Ant kurz &amp; gut enthlt eine vollstndige Referenz der Built-in Tasks
  398. und ihrer jeweiligen Attribute sowie kurze Beispiele fr ihre Verwendung.
  399. Daneben bietet das Buch eine knappe Einfhrung in die Arbeit mit Ant und
  400. eine Erluterung der Ant-Basiselemente (Projekte, Properties, Targets und Tasks).
  401. Behandelt werden auerdem grundlegende Konzepte wie Filesets, Patternsets und
  402. Pfadstrukturen, das Schreiben eigener Tasks, die Aufruf-Syntax und Optional Tasks. </pre>
  403. <table class="externals" cellspacing="1" cellpadding="4">
  404. <tr>
  405. <th colspan="1" rowspan="1"
  406. valign="top" align="left">
  407. Author:
  408. </th>
  409. <td colspan="1" rowspan="1"
  410. valign="top" align="left">
  411. Stefan Edlich
  412. </td>
  413. </tr>
  414. <tr>
  415. <th colspan="1" rowspan="1"
  416. valign="top" align="left">
  417. URL:
  418. </th>
  419. <td colspan="1" rowspan="1"
  420. valign="top" align="left">
  421. <a href="http://www.amazon.de/exec/obidos/ASIN/3897212412/">http://www.amazon.de/exec/obidos/ASIN/3897212412/</a>
  422. </td>
  423. </tr>
  424. </table>
  425. <h4 class="subsection">
  426. <a name="Java Tools for eXtreme Programming"></a>
  427. Java Tools for eXtreme Programming
  428. </h4>
  429. <p>This book covers the following XP subjects:</p>
  430. <ul>
  431. <li>Automated unit and functional testing</li>
  432. <li>Continuous integration through build and deployment automation</li>
  433. <li>The value of refactoring and continuous integration</li>
  434. <li>How Ant, JUnit, JUnitPerf, Cactus, HTTPUnit, and JMeter
  435. can be used to achieve the goals of the XP methodology</li>
  436. </ul>
  437. <table class="externals" cellspacing="1" cellpadding="4">
  438. <tr>
  439. <th colspan="1" rowspan="1"
  440. valign="top" align="left">
  441. Authors:
  442. </th>
  443. <td colspan="1" rowspan="1"
  444. valign="top" align="left">
  445. Richard Hightower and Nicholas Lesiecki
  446. </td>
  447. </tr>
  448. <tr>
  449. <th colspan="1" rowspan="1"
  450. valign="top" align="left">
  451. URL:
  452. </th>
  453. <td colspan="1" rowspan="1"
  454. valign="top" align="left">
  455. <a href="http://www.wiley.com/cda/product/0,,047120708X,00.html">http://www.wiley.com/cda/product/0,,047120708X,00.html</a>
  456. </td>
  457. </tr>
  458. </table>
  459. <h3 class="section">
  460. <a name="Articles and Presentations"></a>
  461. Articles and Presentations
  462. </h3>
  463. <p>The following sections list articles and presentations written about Apache Ant. If
  464. you've written something that should be included, please post it to one
  465. of the mailing lists.</p>
  466. <h3 class="section">
  467. <a name="Articles"></a>
  468. Articles
  469. </h3>
  470. <h4 class="subsection">
  471. <a name="Ant in Anger: Using Ant in a Production Development System"></a>
  472. Ant in Anger: Using Ant in a Production Development System
  473. </h4>
  474. <p>This document describes strategies and some basic examples of how to
  475. use Ant in larger team development projects.</p>
  476. <table class="externals" cellspacing="1" cellpadding="4">
  477. <tr>
  478. <th colspan="1" rowspan="1"
  479. valign="top" align="left">
  480. Author:
  481. </th>
  482. <td colspan="1" rowspan="1"
  483. valign="top" align="left">
  484. <a href="mailto:steve_l@iseran.com">Steve Loughran</a>
  485. </td>
  486. </tr>
  487. <tr>
  488. <th colspan="1" rowspan="1"
  489. valign="top" align="left">
  490. URL:
  491. </th>
  492. <td colspan="1" rowspan="1"
  493. valign="top" align="left">
  494. <a href="ant_in_anger.html">http://ant.apache.org/ant_in_anger.html</a>
  495. </td>
  496. </tr>
  497. </table>
  498. <h4 class="subsection">
  499. <a name="Ant Task Guidelines"></a>
  500. Ant Task Guidelines
  501. </h4>
  502. <p>This document describes how to write custom Ant tasks, and how to submit
  503. them to potentially be included in Ant.</p>
  504. <table class="externals" cellspacing="1" cellpadding="4">
  505. <tr>
  506. <th colspan="1" rowspan="1"
  507. valign="top" align="left">
  508. Author:
  509. </th>
  510. <td colspan="1" rowspan="1"
  511. valign="top" align="left">
  512. <a href="mailto:steve_l@iseran.com">Steve Loughran</a>
  513. </td>
  514. </tr>
  515. <tr>
  516. <th colspan="1" rowspan="1"
  517. valign="top" align="left">
  518. URL:
  519. </th>
  520. <td colspan="1" rowspan="1"
  521. valign="top" align="left">
  522. <a href="ant_task_guidelines.html">http://ant.apache.org/ant_task_guidelines.html</a>
  523. </td>
  524. </tr>
  525. </table>
  526. <h4 class="subsection">
  527. <a name="Automating the build and test process"></a>
  528. Automating the build and test process
  529. </h4>
  530. <p>This article demonstrates an approach to the automated build and test process. Working with Ant 1.3 and the JUnit test framework, it shows how to automate a process that captures pertinent information about each test suite run, generates an attractive report, and e-mails the report.</p>
  531. <table class="externals" cellspacing="1" cellpadding="4">
  532. <tr>
  533. <th colspan="1" rowspan="1"
  534. valign="top" align="left">
  535. Author:
  536. </th>
  537. <td colspan="1" rowspan="1"
  538. valign="top" align="left">
  539. <a href="mailto:ehatcher@apache.org">Erik Hatcher</a>
  540. </td>
  541. </tr>
  542. <tr>
  543. <th colspan="1" rowspan="1"
  544. valign="top" align="left">
  545. URL:
  546. </th>
  547. <td colspan="1" rowspan="1"
  548. valign="top" align="left">
  549. <a href="http://www.ibm.com/developerworks/java/library/j-junitmail/">http://www.ibm.com/developerworks/java/library/j-junitmail/</a>
  550. </td>
  551. </tr>
  552. </table>
  553. <h4 class="subsection">
  554. <a name="Incremental development with Ant and JUnit"></a>
  555. Incremental development with Ant and JUnit
  556. </h4>
  557. <p>This article explores the benefits of unit testing with Ant and
  558. JUnit, detailing how to develop automated unit tests and integrate them
  559. into your build process.</p>
  560. <table class="externals" cellspacing="1" cellpadding="4">
  561. <tr>
  562. <th colspan="1" rowspan="1"
  563. valign="top" align="left">
  564. Author:
  565. </th>
  566. <td colspan="1" rowspan="1"
  567. valign="top" align="left">
  568. <a href="mailto:malcolm@nuearth.com">Malcolm Davis</a>
  569. </td>
  570. </tr>
  571. <tr>
  572. <th colspan="1" rowspan="1"
  573. valign="top" align="left">
  574. URL:
  575. </th>
  576. <td colspan="1" rowspan="1"
  577. valign="top" align="left">
  578. <a href="http://www-106.ibm.com/developerworks/library/j-ant/?dwzone=java">http://www-106.ibm.com/developerworks/library/j-ant/?dwzone=java</a>
  579. </td>
  580. </tr>
  581. </table>
  582. <h4 class="subsection">
  583. <a name="Automate your build process using Java and Ant"></a>
  584. Automate your build process using Java and Ant
  585. </h4>
  586. <p>This article provides an introduction to using Ant with some basic
  587. examples and by highlighting some of the important tasks.</p>
  588. <table class="externals" cellspacing="1" cellpadding="4">
  589. <tr>
  590. <th colspan="1" rowspan="1"
  591. valign="top" align="left">
  592. Author:
  593. </th>
  594. <td colspan="1" rowspan="1"
  595. valign="top" align="left">
  596. <a href="mailto:michael.cymerman@javaworld.com">Michael Cymerman</a>
  597. </td>
  598. </tr>
  599. <tr>
  600. <th colspan="1" rowspan="1"
  601. valign="top" align="left">
  602. URL:
  603. </th>
  604. <td colspan="1" rowspan="1"
  605. valign="top" align="left">
  606. <a href="http://www.javaworld.com/javaworld/jw-10-2000/jw-1020-ant.html">http://www.javaworld.com/javaworld/jw-10-2000/jw-1020-ant.html</a>
  607. </td>
  608. </tr>
  609. </table>
  610. <h4 class="subsection">
  611. <a name="Short tutorial in Cactus' (formerly J2EEUnit) documentation"></a>
  612. Short tutorial in Cactus' (formerly J2EEUnit) documentation
  613. </h4>
  614. <p>There is a short tutorial on how to use Ant in Cactus'
  615. documentation. It has a slant towards build files that will be used
  616. with Cactus.</p>
  617. <table class="externals" cellspacing="1" cellpadding="4">
  618. <tr>
  619. <th colspan="1" rowspan="1"
  620. valign="top" align="left">
  621. Author:
  622. </th>
  623. <td colspan="1" rowspan="1"
  624. valign="top" align="left">
  625. Cactus development team
  626. </td>
  627. </tr>
  628. <tr>
  629. <th colspan="1" rowspan="1"
  630. valign="top" align="left">
  631. URL:
  632. </th>
  633. <td colspan="1" rowspan="1"
  634. valign="top" align="left">
  635. <a href="http://jakarta.apache.org/cactus/howto_ant_primer.html">http://jakarta.apache.org/cactus/howto_ant_primer.html</a>
  636. </td>
  637. </tr>
  638. </table>
  639. <h4 class="subsection">
  640. <a name="Developing custom Ant tasks with VisualAge for Java"></a>
  641. Developing custom Ant tasks with VisualAge for Java
  642. </h4>
  643. <p>This article outlines how to integrate Ant into VisualAge for Java,
  644. and how to write and debug custom tasks using the IDE and the
  645. integrated debugger.</p>
  646. <table class="externals" cellspacing="1" cellpadding="4">
  647. <tr>
  648. <th colspan="1" rowspan="1"
  649. valign="top" align="left">
  650. Author:
  651. </th>
  652. <td colspan="1" rowspan="1"
  653. valign="top" align="left">
  654. <a href="mailto:glenn@somanetworks.com">Glenn McAllister</a>
  655. </td>
  656. </tr>
  657. <tr>
  658. <th colspan="1" rowspan="1"
  659. valign="top" align="left">
  660. URL:
  661. </th>
  662. <td colspan="1" rowspan="1"
  663. valign="top" align="left">
  664. <a href="http://www7.software.ibm.com/vad.nsf/data/document2366?OpenDocument&amp;p=1&amp;BCT=1&amp;Footer=1">http://www7.software.ibm.com/vad.nsf/data/document2366?OpenDocument&amp;p=1&amp;BCT=1&amp;Footer=1</a>
  665. </td>
  666. </tr>
  667. </table>
  668. <h4 class="subsection">
  669. <a name="Automated builds with VisualAge for Java and Ant"></a>
  670. Automated builds with VisualAge for Java and Ant
  671. </h4>
  672. <p>This article shows how you can perform command line builds with a
  673. VisualAge for Java repository.</p>
  674. <table class="externals" cellspacing="1" cellpadding="4">
  675. <tr>
  676. <th colspan="1" rowspan="1"
  677. valign="top" align="left">
  678. Author:
  679. </th>
  680. <td colspan="1" rowspan="1"
  681. valign="top" align="left">
  682. <a href="mailto:glenn@somanetworks.com">Glenn McAllister</a>
  683. </td>
  684. </tr>
  685. <tr>
  686. <th colspan="1" rowspan="1"
  687. valign="top" align="left">
  688. URL:
  689. </th>
  690. <td colspan="1" rowspan="1"
  691. valign="top" align="left">
  692. <a href="http://www7.software.ibm.com/vad.nsf/Data/Document4366?OpenDocument&amp;p=1&amp;BCT=3&amp;Footer=1">http://www7.software.ibm.com/vad.nsf/Data/Document4366?OpenDocument&amp;p=1&amp;BCT=3&amp;Footer=1</a>
  693. </td>
  694. </tr>
  695. </table>
  696. <h4 class="subsection">
  697. <a name="Ant: A Build Tool from the Jakarta Project"></a>
  698. Ant: A Build Tool from the Jakarta Project
  699. </h4>
  700. <p>This article is from the "Best Practices" section of
  701. Sun's Dot-Com Builder Site.</p>
  702. <table class="externals" cellspacing="1" cellpadding="4">
  703. <tr>
  704. <th colspan="1" rowspan="1"
  705. valign="top" align="left">
  706. Author:
  707. </th>
  708. <td colspan="1" rowspan="1"
  709. valign="top" align="left">
  710. Laura Geele Wang
  711. </td>
  712. </tr>
  713. <tr>
  714. <th colspan="1" rowspan="1"
  715. valign="top" align="left">
  716. URL:
  717. </th>
  718. <td colspan="1" rowspan="1"
  719. valign="top" align="left">
  720. <a href="http://dcb.sun.com/practices/profiles/ant.jsp">http://dcb.sun.com/practices/profiles/ant.jsp</a>
  721. </td>
  722. </tr>
  723. </table>
  724. <h4 class="subsection">
  725. <a name="Making a Mountain Out of an Anthill"></a>
  726. Making a Mountain Out of an Anthill
  727. </h4>
  728. <p>This article is from the June 2001 issue of the Java Developer'
  729. Journal. You need to be a registered JDJ subscriber to view this
  730. article.</p>
  731. <table class="externals" cellspacing="1" cellpadding="4">
  732. <tr>
  733. <th colspan="1" rowspan="1"
  734. valign="top" align="left">
  735. Author:
  736. </th>
  737. <td colspan="1" rowspan="1"
  738. valign="top" align="left">
  739. Neal Ford
  740. </td>
  741. </tr>
  742. <tr>
  743. <th colspan="1" rowspan="1"
  744. valign="top" align="left">
  745. URL:
  746. </th>
  747. <td colspan="1" rowspan="1"
  748. valign="top" align="left">
  749. <a href="http://www.sys-con.com/java/archivesa.cfm?volume=06&amp;issue=06">http://www.sys-con.com/java/archivesa.cfm?volume=06&amp;issue=06</a>
  750. </td>
  751. </tr>
  752. </table>
  753. <h4 class="subsection">
  754. <a name="Using Ant and Weblogic EJBs"></a>
  755. Using Ant and Weblogic EJBs
  756. </h4>
  757. <p>This article describes how to use Ant to create Weblogic EJBs, and
  758. some workarounds for issues you may encounter.</p>
  759. <table class="externals" cellspacing="1" cellpadding="4">
  760. <tr>
  761. <th colspan="1" rowspan="1"
  762. valign="top" align="left">
  763. Author:
  764. </th>
  765. <td colspan="1" rowspan="1"
  766. valign="top" align="left">
  767. Jesse E. Tilly
  768. </td>
  769. </tr>
  770. <tr>
  771. <th colspan="1" rowspan="1"
  772. valign="top" align="left">
  773. URL:
  774. </th>
  775. <td colspan="1" rowspan="1"
  776. valign="top" align="left">
  777. <a href="http://www.onjava.com/pub/a/onjava/2001/06/25/antejb.html">http://www.onjava.com/pub/a/onjava/2001/06/25/antejb.html</a>
  778. </td>
  779. </tr>
  780. </table>
  781. <h4 class="subsection">
  782. <a name="Using JavaScript with Ant"></a>
  783. Using JavaScript with Ant
  784. </h4>
  785. <p>A tutorial about using JavaScript and XSLT with Ant.</p>
  786. <table class="externals" cellspacing="1" cellpadding="4">
  787. <tr>
  788. <th colspan="1" rowspan="1"
  789. valign="top" align="left">
  790. Author:
  791. </th>
  792. <td colspan="1" rowspan="1"
  793. valign="top" align="left">
  794. Dylan Schiemann
  795. </td>
  796. </tr>
  797. <tr>
  798. <th colspan="1" rowspan="1"
  799. valign="top" align="left">
  800. URL:
  801. </th>
  802. <td colspan="1" rowspan="1"
  803. valign="top" align="left">
  804. <a href="http://www.sitepen.com/ant/javascript.html">http://www.sitepen.com/ant/javascript.html</a>
  805. </td>
  806. </tr>
  807. </table>
  808. <h4 class="subsection">
  809. <a name="Building with Ant"></a>
  810. Building with Ant
  811. </h4>
  812. <p>Series of articles that describe a framework for web
  813. application development based on Ant and JUnit.</p>
  814. <table class="externals" cellspacing="1" cellpadding="4">
  815. <tr>
  816. <th colspan="1" rowspan="1"
  817. valign="top" align="left">
  818. Author:
  819. </th>
  820. <td colspan="1" rowspan="1"
  821. valign="top" align="left">
  822. <a href="mailto:alexc@purpletech.com">Alex Chaffee</a>
  823. </td>
  824. </tr>
  825. <tr>
  826. <th colspan="1" rowspan="1"
  827. valign="top" align="left">
  828. URL:
  829. </th>
  830. <td colspan="1" rowspan="1"
  831. valign="top" align="left">
  832. Introduction: <a href="http://softwaredev.earthweb.com/sdtech/article/0,,12065_989631,00.html">http://softwaredev.earthweb.com/sdtech/article/0,,12065_989631,00.html</a><br />
  833. Directory Structure: <a href="http://softwaredev.earthweb.com/sdtech/article/0,,12082_994991,00.html">http://softwaredev.earthweb.com/sdtech/article/0,,12082_994991,00.html</a><br />
  834. Deployment and Distribution: <a href="http://softwaredev.earthweb.com/sdtech/article/0,,12077_998241,00.html">http://softwaredev.earthweb.com/sdtech/article/0,,12077_998241,00.html</a>
  835. </td>
  836. </tr>
  837. </table>
  838. <h4 class="subsection">
  839. <a name="Developing with JAXB and Ant"></a>
  840. Developing with JAXB and Ant
  841. </h4>
  842. <p>Series of articles that shows how to use Ant together with
  843. the Java API for XML Binding (JAXB).</p>
  844. <table class="externals" cellspacing="1" cellpadding="4">
  845. <tr>
  846. <th colspan="1" rowspan="1"
  847. valign="top" align="left">
  848. Author:
  849. </th>
  850. <td colspan="1" rowspan="1"
  851. valign="top" align="left">
  852. Joseph Shelby
  853. </td>
  854. </tr>
  855. <tr>
  856. <th colspan="1" rowspan="1"
  857. valign="top" align="left">
  858. URL:
  859. </th>
  860. <td colspan="1" rowspan="1"
  861. valign="top" align="left">
  862. <a href="http://www.onjava.com/pub/a/onjava/2002/03/06/jaxant1.html">http://www.onjava.com/pub/a/onjava/2002/03/06/jaxant1.html</a><br />
  863. <a href="http://www.onjava.com/pub/a/onjava/2002/03/13/jaxbant2.html">http://www.onjava.com/pub/a/onjava/2002/03/13/jaxbant2.html</a>
  864. </td>
  865. </tr>
  866. </table>
  867. <h3 class="section">
  868. <a name="Presentations"></a>
  869. Presentations
  870. </h3>
  871. <h4 class="subsection">
  872. <a name="Ant - presented to the Tucson Java Users Group"></a>
  873. Ant - presented to the Tucson Java Users Group
  874. </h4>
  875. <p>A PowerPoint technical overview presentation on Ant. Comes complete with a straightforward example demonstrating code compilation, JAR'ing, JUnit testing, JUnit reporting, and Zipping a distribution. A few advanced topics are touched upon like property immutabality and using &lt;antcall&gt; to get around it, build listeners, and writing custom tasks.</p>
  876. <table class="externals" cellspacing="1" cellpadding="4">
  877. <tr>
  878. <th colspan="1" rowspan="1"
  879. valign="top" align="left">
  880. Author:
  881. </th>
  882. <td colspan="1" rowspan="1"
  883. valign="top" align="left">
  884. <a href="mailto:ehatcher@apache.org">Erik Hatcher</a>
  885. </td>
  886. </tr>
  887. <tr>
  888. <th colspan="1" rowspan="1"
  889. valign="top" align="left">
  890. URL:
  891. </th>
  892. <td colspan="1" rowspan="1"
  893. valign="top" align="left">
  894. <a href="http://erik.hatcher.net/ant-jug.zip">http://erik.hatcher.net/ant-jug.zip</a>
  895. </td>
  896. </tr>
  897. </table>
  898. <h4 class="subsection">
  899. <a name="Ant Build Tool"></a>
  900. Ant Build Tool
  901. </h4>
  902. <p>A PowerPoint presentation on Ant 1.2. It provides a basic overview
  903. of Ant's capabilities.</p>
  904. <table class="externals" cellspacing="1" cellpadding="4">
  905. <tr>
  906. <th colspan="1" rowspan="1"
  907. valign="top" align="left">
  908. Author:
  909. </th>
  910. <td colspan="1" rowspan="1"
  911. valign="top" align="left">
  912. <a href="mailto:chanezon@netscape.com">Patrick Chanezon</a>
  913. </td>
  914. </tr>
  915. <tr>
  916. <th colspan="1" rowspan="1"
  917. valign="top" align="left">
  918. URL:
  919. </th>
  920. <td colspan="1" rowspan="1"
  921. valign="top" align="left">
  922. <a href="http://people.netscape.com/chanezon/tech/ant/ant_preso.ppt">http://people.netscape.com/chanezon/tech/ant/ant_preso.ppt</a>
  923. </td>
  924. </tr>
  925. </table>
  926. <h4 class="subsection">
  927. <a name="Ant"></a>
  928. Ant
  929. </h4>
  930. <p>A detailed Ant 1.3 PowerPoint presentation, made at the St. Louis Java Users Group
  931. meeting in March 2001. Includes a detailed build file and basic
  932. descriptions of all the built in and optional tasks. Updated for Ant 1.4 in October 2001.
  933. Available in PDF format now.</p>
  934. <table class="externals" cellspacing="1" cellpadding="4">
  935. <tr>
  936. <th colspan="1" rowspan="1"
  937. valign="top" align="left">
  938. Author:
  939. </th>
  940. <td colspan="1" rowspan="1"
  941. valign="top" align="left">
  942. Mark Volkmann
  943. </td>
  944. </tr>
  945. <tr>
  946. <th colspan="1" rowspan="1"
  947. valign="top" align="left">
  948. URL:
  949. </th>
  950. <td colspan="1" rowspan="1"
  951. valign="top" align="left">
  952. <a href="http://www.ociweb.com/jnb/files/Ant.pdf">http://www.ociweb.com/jnb/files/Ant.pdf</a>
  953. </td>
  954. </tr>
  955. </table>
  956. <h4 class="subsection">
  957. <a name="Modern Development Crises"></a>
  958. Modern Development Crises
  959. </h4>
  960. <p>This presentation is an overview of the current state of software
  961. development today. There are a couple of slides that briefly cover
  962. Ant.</p>
  963. <table class="externals" cellspacing="1" cellpadding="4">
  964. <tr>
  965. <th colspan="1" rowspan="1"
  966. valign="top" align="left">
  967. Author:
  968. </th>
  969. <td colspan="1" rowspan="1"
  970. valign="top" align="left">
  971. <a href="mailto:steve_l@iseran.com">Steve Loughran</a>
  972. </td>
  973. </tr>
  974. <tr>
  975. <th colspan="1" rowspan="1"
  976. valign="top" align="left">
  977. URL:
  978. </th>
  979. <td colspan="1" rowspan="1"
  980. valign="top" align="left">
  981. <a href="http://www.iseran.com/Steve/modern_development_processes.html">http://www.iseran.com/Steve/modern_development_processes.html</a>
  982. </td>
  983. </tr>
  984. </table>
  985. <h4 class="subsection">
  986. <a name="When Web Services Go Bad"></a>
  987. When Web Services Go Bad
  988. </h4>
  989. <p>A presentation from the <a href="http://www.sellsbrothers.com/conference/">Web Services
  990. DevCon</a> in March 2002.</p>
  991. <table class="externals" cellspacing="1" cellpadding="4">
  992. <tr>
  993. <th colspan="1" rowspan="1"
  994. valign="top" align="left">
  995. Author:
  996. </th>
  997. <td colspan="1" rowspan="1"
  998. valign="top" align="left">
  999. <a href="mailto:steve_l@iseran.com">Steve Loughran</a>
  1000. </td>
  1001. </tr>
  1002. <tr>
  1003. <th colspan="1" rowspan="1"
  1004. valign="top" align="left">
  1005. URL:
  1006. </th>
  1007. <td colspan="1" rowspan="1"
  1008. valign="top" align="left">
  1009. <a href="http://www.iseran.com/Steve/papers/when_web_services_go_bad.html">http://www.iseran.com/Steve/papers/when_web_services_go_bad.html</a>
  1010. </td>
  1011. </tr>
  1012. </table>
  1013. </div>
  1014. </div>
  1015. <p class="copyright">
  1016. Copyright &copy; 2000-2003&nbsp;The Apache Software Foundation. All rights reserved.
  1017. <script type="text/javascript" language="JavaScript"><!--
  1018. document.write(" - "+"Last Published: " + document.lastModified);
  1019. // -->
  1020. </script>
  1021. </p>
  1022. </body>
  1023. </html>