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.

external.xml 43 kB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357
  1. <?xml version="1.0"?>
  2. <document>
  3. <properties>
  4. <author email="bodewig@apache.org">Stefan Bodewig</author>
  5. <title>External Tools and Tasks</title>
  6. </properties>
  7. <body>
  8. <section name="External Tools and Tasks">
  9. <p>This page lists external resources for Apache Ant: tasks, IDE
  10. integration tools, loggers, you name it. If you've written
  11. something that should be included, please post all relevant
  12. information to one of the mailing lists.</p>
  13. <p>Nothing listed here is directly supported by the Ant
  14. developers, if you encounter any problems with them, please use
  15. the contact information.</p>
  16. </section>
  17. <section name="Tasks">
  18. <subsection name="AJC">
  19. <p><a href="http://aspectj.org">AspectJ</a> is an
  20. aspect-oriented extension to Java. This task compiles a
  21. source tree using the AspectJ compiler -- AJC.</p>
  22. <table>
  23. <tr>
  24. <th>Compatibility:</th>
  25. <td>Ant 1.3</td>
  26. </tr>
  27. <tr>
  28. <th>URL:</th>
  29. <td><a href="http://aspectj.org/dl">http://aspectj.org/dl</a></td>
  30. </tr>
  31. <tr>
  32. <th>Contact:</th>
  33. <td><a href="mailto:support@aspectj.org">support@aspectj.org</a></td>
  34. </tr>
  35. <tr>
  36. <th>License:</th>
  37. <td>Apache Software License</td>
  38. </tr>
  39. </table>
  40. </subsection>
  41. <subsection name="Anakia">
  42. <p>Actually, Anakia is more than just an Ant task, it is a an
  43. XML transformation tool based on JDOM, Velocity and Ant.</p>
  44. <table>
  45. <tr>
  46. <th>Compatibility:</th>
  47. <td>Ant 1.2 and later</td>
  48. </tr>
  49. <tr>
  50. <th>URL:</th>
  51. <td><a href="http://jakarta.apache.org/velocity/anakia.html">http://jakarta.apache.org/velocity/anakia.html</a></td>
  52. </tr>
  53. <tr>
  54. <th>Contact:</th>
  55. <td><a href="http://jakarta.apache.org/site/mail2.html">Velocity mailing lists</a></td>
  56. </tr>
  57. <tr>
  58. <th>License:</th>
  59. <td>Apache Software License</td>
  60. </tr>
  61. </table>
  62. </subsection>
  63. <subsection name="Anteater">
  64. <p>Anteater is a set of Ant tasks for the functional testing of websites
  65. and web services (functional testing being; hit a URL and ensure the
  66. response meets certain criteria). Can test HTTP params, response
  67. codes, XPath, regexp and Relax NG expressions. Includes HTML reporting
  68. (based on junitreport) and a hierarchical grouping system for quickly
  69. configuring large test scripts.
  70. </p>
  71. <table>
  72. <tr>
  73. <th>Compatibility:</th>
  74. <td>Ant 1.5 and later</td>
  75. </tr>
  76. <tr>
  77. <th>URL:</th>
  78. <td><a href="http://aft.sourceforge.net">http://aft.sourceforge.net</a></td>
  79. </tr>
  80. <tr>
  81. <th>Contact:</th>
  82. <td><a href="http://lists.sourceforge.net/lists/listinfo/aft-devel">developer
  83. mailing list</a></td>
  84. </tr>
  85. <tr>
  86. <th>License:</th>
  87. <td>Apache Software License</td>
  88. </tr>
  89. </table>
  90. </subsection>
  91. <subsection name="Checkstyle">
  92. <p>Checkstyle is a development tool to help programmers write
  93. Java code that adheres to a coding standard. Its purpose is to
  94. automate the process of checking Java code, and to spare
  95. humans of this boring (but important) task.</p>
  96. <p>Checkstyle can be run via an Ant task or a command line
  97. utility.</p>
  98. <table>
  99. <tr>
  100. <th>Compatibility:</th>
  101. <td>Ant 1.2 to 1.4.1</td>
  102. </tr>
  103. <tr>
  104. <th>URL:</th>
  105. <td><a href="http://checkstyle.sourceforge.net/">http://checkstyle.sourceforge.net/</a></td>
  106. </tr>
  107. <tr>
  108. <th>Contact:</th>
  109. <td><a href="mailto:checkstyle@puppycrawl.com">Oliver Burn</a></td>
  110. </tr>
  111. <tr>
  112. <th>License:</th>
  113. <td>Starting with release 2.0 the license is the GNU
  114. Lesser General Public License. Prior releases were under
  115. the GNU General Public License.</td>
  116. </tr>
  117. </table>
  118. </subsection>
  119. <subsection name="CleanImports">
  120. <p>Removes unneeded imports. Formats your import
  121. sections. Flags ambiguous imports.</p>
  122. <table>
  123. <tr>
  124. <th>Compatibility:</th>
  125. <td>Ant 1.3</td>
  126. </tr>
  127. <tr>
  128. <th>URL:</th>
  129. <td><a href="http://www.euronet.nl/users/tomb/cleanImports/index.html">http://www.euronet.nl/users/tomb/cleanImports/index.html</a></td>
  130. </tr>
  131. <tr>
  132. <th>Contact:</th>
  133. <td><a href="mailto:tomb@euronet.nl">Tom Brus</a></td>
  134. </tr>
  135. <tr>
  136. <th>License:</th>
  137. <td>Apache Software License</td>
  138. </tr>
  139. </table>
  140. </subsection>
  141. <subsection name="Clover">
  142. <p>Clover is an Ant-based Code Coverage tool. It can be used
  143. seamlessly with Ant-based projects. It provides method,
  144. statement, and branch coverage analysis, and has rich
  145. reporting in XML, HTML or via a Swing GUI.</p>
  146. <table>
  147. <tr>
  148. <th>Compatibility:</th>
  149. <td>Ant 1.4.1 or greater</td>
  150. </tr>
  151. <tr>
  152. <th>URL:</th>
  153. <td><a href="http://www.thecortex.net/clover">http://www.thecortex.net/clover</a></td>
  154. </tr>
  155. <tr>
  156. <th>Contact:</th>
  157. <td><a href="mailto:clover-support@cortexebusiness.com.au">clover-support@cortexebusiness.com.au</a></td>
  158. </tr>
  159. <tr>
  160. <th>License:</th>
  161. <td>Commercial, free licenses available for open source
  162. projects.</td>
  163. </tr>
  164. </table>
  165. </subsection>
  166. <subsection name="Configure">
  167. <p>Recursive build support (call ant on every package level,
  168. and only build files in that package or in that package and
  169. everything below) with seperation of source and output.</p>
  170. <p>The task generates build files in any subdirectory (except
  171. for CVS-directories) for you. Only place one build.xml file in
  172. the top and call target &apos;setup&apos; or
  173. &apos;rescan&apos;.</p>
  174. <table>
  175. <tr>
  176. <th>Compatibility:</th>
  177. <td>Ant 1.2 and 1.3</td>
  178. </tr>
  179. <tr>
  180. <th>URL:</th>
  181. <td><a href="http://www.dsdelft.nl/~lemval/ant/">http://www.dsdelft.nl/~lemval/ant/</a></td>
  182. </tr>
  183. <tr>
  184. <th>Contact:</th>
  185. <td><a href="mailto:lemval@dsdelft.nl">M.J.P. van Leeuwen</a></td>
  186. </tr>
  187. <tr>
  188. <th>License:</th>
  189. <td>License derived from Apache Software License</td>
  190. </tr>
  191. </table>
  192. </subsection>
  193. <subsection name="CVSGrab">
  194. <p>A little CVS client that can be useful when people are
  195. behind corporate firewall that blocks any cvs
  196. communications. It uses the ViewCVS web interface to access
  197. the CVS repository via standard http, and downloads all the
  198. files present in it.</p>
  199. <p>It works from the command line or as an Ant task.</p>
  200. <table>
  201. <tr>
  202. <th>Compatibility:</th>
  203. <td>Ant 1.3 or higher</td>
  204. </tr>
  205. <tr>
  206. <th>URL:</th>
  207. <td><a href="http://cvsgrab.sourceforge.net/">http://cvsgrab.sourceforge.net/</a></td>
  208. </tr>
  209. <tr>
  210. <th>Contact:</th>
  211. <td><a href="mailto:cvsgrab-users@lists.sourceforge.net">CVSGrab
  212. user mailing list</a></td>
  213. </tr>
  214. <tr>
  215. <th>License:</th>
  216. <td>LGPL</td>
  217. </tr>
  218. </table>
  219. </subsection>
  220. <subsection name="Doxygen task">
  221. <p>There are two Ant tasks for running the Doxygen
  222. documentation system.</p>
  223. <table>
  224. <tr>
  225. <th>Compatibility:</th>
  226. <td>Ant 1.1 and later</td>
  227. </tr>
  228. <tr>
  229. <th>URL:</th>
  230. <td><a href="http://www.bgw.org/projects/java/ant/">http://www.bgw.org/projects/java/ant/</a></td>
  231. </tr>
  232. <tr>
  233. <th>Contact:</th>
  234. <td><a href="mailto:mortis@voicenet.com">Kyle R. Burton</a></td>
  235. </tr>
  236. <tr>
  237. <th>License:</th>
  238. <td>Apache Software Foundation License</td>
  239. </tr>
  240. </table>
  241. <p>and</p>
  242. <table>
  243. <tr>
  244. <th>Compatibility:</th>
  245. <td>Ant 1.5 and later</td>
  246. </tr>
  247. <tr>
  248. <th>URL:</th>
  249. <td><a href="http://ant-doxygen.sourceforge.net">http://ant-doxygen.sourceforge.net</a></td>
  250. </tr>
  251. <tr>
  252. <th>Contact:</th>
  253. <td><a href="mailto:akkumar@users.sourceforge.net">Karthik A Kumar</a></td>
  254. </tr>
  255. <tr>
  256. <th>License:</th>
  257. <td>Apache Software Foundation License</td>
  258. </tr>
  259. </table>
  260. </subsection>
  261. <subsection name="GenJar">
  262. <p>Builds a JAR file based on class dependencies rather than simply the contents of a directory</p>
  263. <table>
  264. <tr>
  265. <th>Compatibility:</th>
  266. <td>Ant 1.4 alpha (built after 2001/08/04) and later</td>
  267. </tr>
  268. <tr>
  269. <th>URL:</th>
  270. <td><a href="http://genjar.sourceforge.net/">http://genjar.sourceforge.net/</a></td>
  271. </tr>
  272. <tr>
  273. <th>Contact:</th>
  274. <td><a href="mailto:jesse_dev@yahoo.com">Jesse Stockall</a></td>
  275. </tr>
  276. <tr>
  277. <th>License:</th>
  278. <td>Apache Software Foundation License</td>
  279. </tr>
  280. </table>
  281. </subsection>
  282. <subsection name="Greebo">
  283. <p>Greebo is an Ant-task for downloading dependency files
  284. (currently only jars) from a network to a specified directory,
  285. much like Maven. It supports multiple local and remote
  286. repositories with either flat or maven-like structures. It can
  287. read the dependency list from a Maven project file, a
  288. maven-like dependency file, or directly from the build.xml
  289. file.</p>
  290. <table>
  291. <tr>
  292. <th>Compatibility:</th>
  293. <td>Ant 1.5</td>
  294. </tr>
  295. <tr>
  296. <th>URL:</th>
  297. <td><a href="http://www.discore.com/oz/new/index.htm">http://www.discore.com/oz/new/index.htm</a></td>
  298. </tr>
  299. <tr>
  300. <th>Contact:</th>
  301. <td><a href="mailto:ozbene@discore.com">Ozben Evren</a></td>
  302. </tr>
  303. <tr>
  304. <th>License:</th>
  305. <td>Apache Software License</td>
  306. </tr>
  307. </table>
  308. </subsection>
  309. <subsection name="Importscrubber">
  310. <p>Removes unnecessary import statements from a Java source code file.</p>
  311. <table>
  312. <tr>
  313. <th>Compatibility:</th>
  314. <td>Ant 1.3</td>
  315. </tr>
  316. <tr>
  317. <th>URL:</th>
  318. <td><a href="http://importscrubber.sourceforge.net/">http://importscrubber.sourceforge.net/</a></td>
  319. </tr>
  320. <tr>
  321. <th>Contact:</th>
  322. <td><a href="mailto:tomcopeland@users.sourceforge.net">Tom Copeland</a></td>
  323. </tr>
  324. <tr>
  325. <th>License:</th>
  326. <td>LGPL</td>
  327. </tr>
  328. </table>
  329. </subsection>
  330. <subsection name="IsDirValidator">
  331. <p>Checks whether a given directory structure conforms to
  332. certain rules that are defined via nested elements of the
  333. task.</p>
  334. <table>
  335. <tr>
  336. <th>Compatibility:</th>
  337. <td>Ant 1.4</td>
  338. </tr>
  339. <tr>
  340. <th>URL:</th>
  341. <td><a href="http://isvalidator.sourceforge.net/en/isDirValidator.htm">http://isvalidator.sourceforge.net/en/isDirValidator.htm</a></td>
  342. </tr>
  343. <tr>
  344. <th>Contact:</th>
  345. <td><a href="mailto:news@inigoserrano.com">I&#xF1;igo Serrano</a></td>
  346. </tr>
  347. <tr>
  348. <th>License:</th>
  349. <td>GNU General Public License</td>
  350. </tr>
  351. </table>
  352. </subsection>
  353. <subsection name="Jalopy">
  354. <p>An Ant Plug-in for the Java Source Code Formatter
  355. Jalopy.</p>
  356. <table>
  357. <tr>
  358. <th>Compatibility:</th>
  359. <td>Ant 1.4 (or higher)</td>
  360. </tr>
  361. <tr>
  362. <th>URL:</th>
  363. <td><a href="http://jalopy.sourceforge.net">http://jalopy.sourceforge.net</a></td>
  364. </tr>
  365. <tr>
  366. <th>Contact:</th>
  367. <td><a href="http://jalopy.sf.net/contact.html">http://jalopy.sf.net/contact.html</a></td>
  368. </tr>
  369. <tr>
  370. <th>License:</th>
  371. <td>Starting with release 1.0 Beta 6 the license is the
  372. BSD License. Prior releases were under the GNU General
  373. Public License.</td>
  374. </tr>
  375. </table>
  376. </subsection>
  377. <subsection name="Javamake">
  378. <p>A task to compile Java sources and manage class file
  379. dependencies. Functionality is equivalent to that of standard
  380. Javac and Depend tasks combined, with improved dependency
  381. checking.</p>
  382. <table>
  383. <tr>
  384. <th>Compatibility:</th>
  385. <td>Ant 1.4.1</td>
  386. </tr>
  387. <tr>
  388. <th>URL:</th>
  389. <td><a href="http://www.experimentalstuff.com/Technologies/JavaMake/index.html">http://www.experimentalstuff.com/Technologies/JavaMake/index.html</a></td>
  390. </tr>
  391. <tr>
  392. <th>Contact:</th>
  393. <td><a href="mailto:Mikhail.Dmitriev@eng.sun.com">Mikhail Dmitriev</a></td>
  394. </tr>
  395. <tr>
  396. <th>License:</th>
  397. <td>BSD-like License</td>
  398. </tr>
  399. </table>
  400. </subsection>
  401. <subsection name="J2ME Ant Tasks">
  402. <p>There are three different sets of tasks to help build <a
  403. href="http://java.sun.com/j2me/">Java 2 Platform, Micro
  404. Edition</a> (J2ME) applications.</p>
  405. <p>This set supports CLDC and the K Virtual Machine (KVM):</p>
  406. <table>
  407. <tr>
  408. <th>Compatibility:</th>
  409. <td>Ant 1.3</td>
  410. </tr>
  411. <tr>
  412. <th>URL:</th>
  413. <td><a href="http://www.dribin.org/dave/j2me_ant/">http://www.dribin.org/dave/j2me_ant/</a></td>
  414. </tr>
  415. <tr>
  416. <th>Contact:</th>
  417. <td><a href="mailto:drib@enteract.com">Dave Dribin</a></td>
  418. </tr>
  419. <tr>
  420. <th>License:</th>
  421. <td>Apache Software License</td>
  422. </tr>
  423. </table>
  424. <p>And this set works with the J2ME Wireless Toolkit and MIDP
  425. for PalmOS:</p>
  426. <table>
  427. <tr>
  428. <th>Compatibility:</th>
  429. <td>Ant 1.3</td>
  430. </tr>
  431. <tr>
  432. <th>URL:</th>
  433. <td><a href="http://www.stampysoft.com/ant/">http://www.stampysoft.com/ant/</a></td>
  434. </tr>
  435. <tr>
  436. <th>Contact:</th>
  437. <td><a href="mailto:jeckels@stampysoft.com">Josh Eckels</a></td>
  438. </tr>
  439. <tr>
  440. <th>License:</th>
  441. <td>MIT License</td>
  442. </tr>
  443. </table>
  444. <p>With Antenna, you can compile, preverify, package, and
  445. obfuscate your MIDP applications, as well as convert them to
  446. PRC files designed to run on MIDP for PalmOS. The tasks are
  447. mostly built around the Wireless Toolkit and the free
  448. RetroGuard obfuscator, with some additional gimmicks like
  449. automatic version numbering.</p>
  450. <table>
  451. <tr>
  452. <th>Compatibility:</th>
  453. <td>Ant 1.4.1 or later</td>
  454. </tr>
  455. <tr>
  456. <th>URL:</th>
  457. <td><a href="http://antenna.sourceforge.net/">http://antenna.sourceforge.net/</a></td>
  458. </tr>
  459. <tr>
  460. <th>Contact:</th>
  461. <td><a href="mailto:joerg@pleumann.de">J&#xF6;rg Pleumann</a></td>
  462. </tr>
  463. <tr>
  464. <th>License:</th>
  465. <td>GNU Lesser General Public License</td>
  466. </tr>
  467. </table>
  468. </subsection>
  469. <subsection name="javarec">
  470. <p>Ant tasks that generate record classes for VisualAge for
  471. Java from Cobol copy books.</p>
  472. <table>
  473. <tr>
  474. <th>Compatibility:</th>
  475. <td>Ant 1.4</td>
  476. </tr>
  477. <tr>
  478. <th>URL:</th>
  479. <td><a href="http://glezen.org/javarec/">http://glezen.org/javarec/</a></td>
  480. </tr>
  481. <tr>
  482. <th>Contact:</th>
  483. <td><a href="mailto:pglezen@us.ibm.com">Paul Glezen</a></td>
  484. </tr>
  485. <tr>
  486. <th>License:</th>
  487. <td>Apache Software License</td>
  488. </tr>
  489. </table>
  490. </subsection>
  491. <subsection name="JCSC">
  492. <p>JCSC is a Java Coding Standard Checker which also features
  493. the generation of some code metrics. It is a command line tool
  494. with an Ant task to scan whole package trees. The result can
  495. viewed in an JavaDoc style web page.</p>
  496. <table>
  497. <tr>
  498. <th>Compatibility:</th>
  499. <td>Ant &gt;= 1.5</td>
  500. </tr>
  501. <tr>
  502. <th>URL:</th>
  503. <td><a href="http://jcsc.sourceforge.net/">http://jcsc.sourceforge.net/</a></td>
  504. </tr>
  505. <tr>
  506. <th>Contact:</th>
  507. <td><a href="mailto:rjocham72@netscape.net">Ralph Jocham</a></td>
  508. </tr>
  509. <tr>
  510. <th>License:</th>
  511. <td>GNU General Public License</td>
  512. </tr>
  513. </table>
  514. </subsection>
  515. <subsection name="Jing Task">
  516. <p> Validates XML files against the RELAX NG alternative to XML Schema.
  517. The Jing task for Ant allows you to efficiently validate
  518. multiple files against multiple RELAX NG patterns and integrate
  519. RELAX NG validation with other XML processing.</p>
  520. <table>
  521. <tr>
  522. <th>Compatibility:</th>
  523. <td>Ant 1.4 and later</td>
  524. </tr>
  525. <tr>
  526. <th>URL:</th>
  527. <td><a href="http://www.thaiopensource.com/relaxng/jing-ant.html">
  528. http://www.thaiopensource.com/relaxng/jing-ant.html</a></td>
  529. </tr>
  530. <tr>
  531. <th>License:</th>
  532. <td>BSD-like</td>
  533. </tr>
  534. </table>
  535. </subsection>
  536. <subsection name="jMetra">
  537. <p>jMetra is a tool for collecting code metrics across a
  538. project lifecycle and compiling the results into
  539. JavaDoc-styled documentation to analyze project metrics over
  540. time. jMetra is best utilized by integrating it with your
  541. project's scheduled build process.</p>
  542. <p>It works from the command line or using several provided
  543. Ant tasks.</p>
  544. <table>
  545. <tr>
  546. <th>Compatibility:</th>
  547. <td>Ant 1.4 and higher</td>
  548. </tr>
  549. <tr>
  550. <th>URL:</th>
  551. <td>
  552. <a href="http://www.jmetra.com/">http://www.jmetra.com/</a
  553. >
  554. </td>
  555. </tr>
  556. <tr>
  557. <th>Contact:</th>
  558. <td>
  559. <a href="mailto:tnewton@hypercisioninc.com">R Todd Newton
  560. </a>
  561. </td>
  562. </tr>
  563. <tr>
  564. <th>License:</th>
  565. <td>Commercial, free licenses for open source projects and
  566. evaluations.</td>
  567. </tr>
  568. </table>
  569. </subsection>
  570. <subsection name="JNI">
  571. <p>
  572. JNI is a free toolkit that makes easy work of
  573. integrating Java and C through the Java Native
  574. Interface (JNI). It includes a code generator that
  575. generates both Java "proxy" classes to access C
  576. "peer" classes, and C "proxy" classes to access
  577. Java "peer" classes or interfaces. It also
  578. includes a core library with a simplified JVM
  579. interface as well as "helper" classes to ease
  580. working with the JNI data types. The code
  581. generation is driven by an XML project file that
  582. can be created with the assistance of the GUI
  583. Project Manager. The code generation can be
  584. invoked either from Ant or from the
  585. GUI. Includes a comprehensive printable PDF User
  586. Guide and plenty of examples.</p>
  587. <table>
  588. <tr>
  589. <th>Compatibility:</th>
  590. <td>Ant 1.4</td>
  591. </tr>
  592. <tr>
  593. <th>URL:</th>
  594. <td><a href="http://jnipp.sf.net/">http://jnipp.sf.net/</a></td>
  595. </tr>
  596. <tr>
  597. <th>Contact:</th>
  598. <td><a href="mailto:ptrewhella@users.sf.net">Phillip E. Trewhella</a></td>
  599. </tr>
  600. <tr>
  601. <th>License:</th>
  602. <td>GNU LGPL</td>
  603. </tr>
  604. </table>
  605. </subsection>
  606. <subsection name="JRun Ant Tasks">
  607. <p>JRun 4 SP1 ships with lib/jrun-ant-tasks.jar, which defines
  608. three Ant tasks: jrun, jrunapp, and jrunjmx. Documentation
  609. for the tasks can be found in JRun under
  610. docs/ant/jrun.html.</p>
  611. <p>Note that the service pack must be installed on top of an
  612. existing JRun 4 installation.</p>
  613. <table>
  614. <tr>
  615. <th>Compatibility:</th>
  616. <td>Ant 1.4 or higher</td>
  617. </tr>
  618. <tr>
  619. <th>URL:</th>
  620. <td><a href="http://dynamic.macromedia.com/bin/MM/software/trial/hwswrec.jsp?product=jrun_sp">http://dynamic.macromedia.com/bin/MM/software/trial/hwswrec.jsp?product=jrun_sp</a></td>
  621. </tr>
  622. <tr>
  623. <th>Contact:</th>
  624. <td><a href="mailto:bdeitte@macromedia.com">Brian Deitte</a></td>
  625. </tr>
  626. <tr>
  627. <th>License:</th>
  628. <td>Commercial</td>
  629. </tr>
  630. </table>
  631. </subsection>
  632. <subsection name="Macker">
  633. <p>A build-time architectural testing tool, designed
  634. to maintain clean layering / tiering / modularity.
  635. Macker works against compiled class files, checking
  636. dependencies between classes against a set of
  637. pattern-based access rules you specify for your
  638. project in an XML rules file. Macker doesn't presume
  639. anything about your architecture -- you write the
  640. rules, and Macker keeps you honest about them.</p>
  641. <table>
  642. <tr>
  643. <th>Compatibility:</th>
  644. <td>Ant 1.5 and higher (1.4 untested but may work)</td>
  645. </tr>
  646. <tr>
  647. <th>URL:</th>
  648. <td><a href="http://innig.net/macker/">http://innig.net/macker/</a></td>
  649. </tr>
  650. <tr>
  651. <th>Contact:</th>
  652. <td><a href="http://innig.net/macker/contact.html">Paul Cantrell</a></td>
  653. </tr>
  654. <tr>
  655. <th>License:</th>
  656. <td>GNU GPL 2.0</td>
  657. </tr>
  658. </table>
  659. </subsection>
  660. <subsection name="PMD">
  661. <p>PMD checks Java source code for unused variables,
  662. unnecessary object creation, etc</p>
  663. <table>
  664. <tr>
  665. <th>Compatibility:</th>
  666. <td>Ant 1.4 and higher</td>
  667. </tr>
  668. <tr>
  669. <th>URL:</th>
  670. <td><a href="http://pmd.sf.net/">http://pmd.sf.net/</a></td>
  671. </tr>
  672. <tr>
  673. <th>Contact:</th>
  674. <td><a href="mailto:tcopeland@apache.org">Tom Copeland</a></td>
  675. </tr>
  676. <tr>
  677. <th>License:</th>
  678. <td>Apache Software Foundation License</td>
  679. </tr>
  680. </table>
  681. </subsection>
  682. <subsection name="Purge">
  683. <p>Purge deletes all but the most recent few files from a fileset.
  684. For example: if you have generated files (logs, .ear, .war, .jar
  685. etc) accumulating in a directory, the purge task will allow you
  686. to delete the older files, keeping just the most recent ones.</p>
  687. <table>
  688. <tr>
  689. <th>Compatibility:</th>
  690. <td>Ant 1.4 or above</td>
  691. </tr>
  692. <tr>
  693. <th>URL:</th>
  694. <td><a href="http://www.dallaway.com/ant/">http://www.dallaway.com/ant/</a></td>
  695. </tr>
  696. <tr>
  697. <th>Contact:</th>
  698. <td><a href="mailto:purge@dallaway.com">Richard Dallaway</a></td>
  699. </tr>
  700. <tr>
  701. <th>License:</th>
  702. <td>LGPL</td>
  703. </tr>
  704. </table>
  705. </subsection>
  706. <subsection name="SerialVer">
  707. <p>SerialVer adds the Java serialver functionality to Apache
  708. Ant. This project adds Tasks and FilterReaders to get, to
  709. insert and to modify the serialVersionUID in the source code
  710. of a serializable class.</p>
  711. <table>
  712. <tr>
  713. <th>Compatibility:</th>
  714. <td>Ant 1.5.1 and later</td>
  715. </tr>
  716. <tr>
  717. <th>URL:</th>
  718. <td><a href="http://serialver.sourceforge.net/">http://serialver.sourceforge.net/</a></td>
  719. </tr>
  720. <tr>
  721. <th>Contact:</th>
  722. <td><a href="https://lists.sourceforge.net/lists/listinfo/serialver-development">developer mailing list</a></td>
  723. </tr>
  724. <tr>
  725. <th>License:</th>
  726. <td>Apache Software License</td>
  727. </tr>
  728. </table>
  729. </subsection>
  730. <subsection name="Styler">
  731. <p>The styler task makes useful combinations of XSLT transformations
  732. easy to specify in an Ant build file. Like the built-in Ant task
  733. style, styler can apply a single transformation to a set of XML files.
  734. But it can also:</p>
  735. <ul>
  736. <li>handle multiple transformations, in parallel or pipelined.</li>
  737. <li>enable transformations that split or merge files</li>
  738. <li>process non-XML files, especially HTML (based on JTidy)</li>
  739. <li>apply non-XSLT transformation, especially "regular
  740. fragmentations"</li>
  741. <li>use any custom XMLReader or XMLFilter class to handle new file
  742. formats and transformation techniques.</li>
  743. </ul>
  744. <table>
  745. <tr>
  746. <th>Compatibility:</th>
  747. <td>Ant 1.4</td>
  748. </tr>
  749. <tr>
  750. <th>URL:</th>
  751. <td><a href="http://www.langdale.com.au/styler/">http://www.langdale.com.au/styler/</a></td>
  752. </tr>
  753. <tr>
  754. <th>Contact:</th>
  755. <td><a href="mailto:adv@langdale.com.au">Arnold deVos</a></td>
  756. </tr>
  757. <tr>
  758. <th>License:</th>
  759. <td>LGPL</td>
  760. </tr>
  761. </table>
  762. </subsection>
  763. <subsection name="Tidy Imports (Tim)">
  764. <p>Tim is a handy utility that can be executed on the command
  765. line or via Ant that automatically formats your import
  766. declarations. Tim is capable of removing unused imports,
  767. expanding or collapsing imports and even organising them into
  768. pre-determined groups.</p>
  769. <table>
  770. <tr>
  771. <th>Compatibility:</th>
  772. <td>Ant 1.3 and later</td>
  773. </tr>
  774. <tr>
  775. <th>URL:</th>
  776. <td><a href="http://www.chive.com/tim.htm">http://www.chive.com/tim.htm</a></td>
  777. </tr>
  778. <tr>
  779. <th>Contact:</th>
  780. <td><a href="mailto:support@chive.com">support@chive.com</a></td>
  781. </tr>
  782. <tr>
  783. <th>License:</th>
  784. <td>Commercial</td>
  785. </tr>
  786. </table>
  787. </subsection>
  788. <subsection name="TiniAnt">
  789. <p>TiniAnt is an Ant task to support building applications for
  790. the <a href="http://www.ibutton.com/TINI/">TINI</a>.</p>
  791. <table>
  792. <tr>
  793. <th>Compatibility:</th>
  794. <td>Ant 1.2 to 1.4.1</td>
  795. </tr>
  796. <tr>
  797. <th>URL:</th>
  798. <td><a href="http://tiniant.sourceforge.net/">http://tiniant.sourceforge.net/</a></td>
  799. </tr>
  800. <tr>
  801. <th>Contact:</th>
  802. <td><a href="mailto:kelly@ad1440.net">Sean Kelly</a></td>
  803. </tr>
  804. <tr>
  805. <th>License:</th>
  806. <td>BSD-like license</td>
  807. </tr>
  808. </table>
  809. </subsection>
  810. <subsection name="Venus Application Publisher's (Vamp) Ant Task Suite">
  811. <p>Venus Application Publisher's (Vamp) Ant Task Suite allows
  812. you to sign and package your applications into relocatable Web
  813. Archives that you can drop into your web server for
  814. single-click launching using Java Web Start or into single
  815. Java Archive installers that serve up their content through a
  816. built-in, multi-threaded, ultra light-weight web server.</p>
  817. <table>
  818. <tr>
  819. <th>Compatibility:</th>
  820. <td>Ant 1.2 and 1.3</td>
  821. </tr>
  822. <tr>
  823. <th>URL:</th>
  824. <td><a href="http://www.geocities.com/vamp201/ant.html">http://www.geocities.com/vamp201/ant.html</a></td>
  825. </tr>
  826. <tr>
  827. <th>Contact:</th>
  828. <td><a href="mailto:vamp201@yahoo.com">Gerald Bauer</a></td>
  829. </tr>
  830. <tr>
  831. <th>License:</th>
  832. <td>GNU General Public License</td>
  833. </tr>
  834. </table>
  835. </subsection>
  836. <subsection name="WOProject">
  837. <p>WOProject provides a set of tools to work with
  838. <a href="http://webobjects.com/">WebObjects 5.1</a>
  839. independent from platform and IDE. It significantly
  840. improves developer productivity
  841. and makes complex project structures more flexible compared to
  842. traditional Makefile-based approach.
  843. </p>
  844. <table>
  845. <tr>
  846. <th>Compatibility:</th>
  847. <td>Ant 1.4</td>
  848. </tr>
  849. <tr>
  850. <th>URL:</th>
  851. <td><a href="http://objectstyle.org/woproject/">http://objectstyle.org/woproject/</a></td>
  852. </tr>
  853. <tr>
  854. <th>Contact:</th>
  855. <td><a href="mailto:andrus@objectstyle.org">Andrus Adamchik</a></td>
  856. </tr>
  857. <tr>
  858. <th>License:</th>
  859. <td>Apache license</td>
  860. </tr>
  861. </table>
  862. </subsection>
  863. <subsection name="XDoclet">
  864. <p>XDoclet is an extended Javadoc Doclet engine for use in Ant.
  865. It lets you create custom Javadoc @tags and based on those tags
  866. generates source code or other files (such as xml-ish deployment
  867. descriptors). Templates and matching tasks are provided to generate
  868. EJB and web application deployment descriptors.
  869. </p>
  870. <table>
  871. <tr>
  872. <th>Compatibility:</th>
  873. <td>Ant 1.4</td>
  874. </tr>
  875. <tr>
  876. <th>URL:</th>
  877. <td><a href="http://sourceforge.net/projects/xdoclet/">http://sourceforge.net/projects/xdoclet/</a></td>
  878. </tr>
  879. <tr>
  880. <th>License:</th>
  881. <td>BSD license</td>
  882. </tr>
  883. </table>
  884. </subsection>
  885. <subsection name="XmlTask">
  886. <p>XmlTask provides a simple means to modify XML documents
  887. without having to learn XSLT. A simple path reference to an
  888. XML node specifies the node you want to change, and how you
  889. want to allow XML insertion and removal, or attribute
  890. changes. The emphasis is on providing the simplest means to
  891. perform common XML replacements</p>
  892. <table>
  893. <tr>
  894. <th>Compatibility:</th>
  895. <td>Ant 1.4 and later</td>
  896. </tr>
  897. <tr>
  898. <th>URL:</th>
  899. <td><a href="http://www.oopsconsultancy.com/software/xmltask.html">http://www.oopsconsultancy.com/software/xmltask.html</a></td>
  900. </tr>
  901. <tr>
  902. <th>Contact:</th>
  903. <td><a href="mailto:xmltask@oopsconsultancy.com">xmltask@oopsconsultancy.com</a></td>
  904. </tr>
  905. <tr>
  906. <th>License:</th>
  907. <td>GNU General Public License</td>
  908. </tr>
  909. </table>
  910. </subsection>
  911. <subsection name="yGuard">
  912. <p>yGuard is a free Java(TM) Bytecode Obfuscator Task that
  913. needs no external script or project files. It can completely
  914. be configured and run through the Ant build script. The task
  915. supports multiple Jar files at once and makes use of
  916. patternsets and regular expressions to specify elements, which
  917. should be left unobfuscated. Additionally it can be used to
  918. produce patches for obfuscated applications that have already
  919. been deployed.</p>
  920. <table>
  921. <tr>
  922. <th>Compatibility:</th>
  923. <td>Ant 1.5 and later</td>
  924. </tr>
  925. <tr>
  926. <th>URL:</th>
  927. <td><a href="http://www.yworks.com/products/yguard">http://www.yworks.com/products/yguard</a></td>
  928. </tr>
  929. <tr>
  930. <th>Contact:</th>
  931. <td><a href="mailto:yguard@yworks.com">yGuard@yWorks.com</a></td>
  932. </tr>
  933. <tr>
  934. <th>License:</th>
  935. <td>Library: LGPL, Task: Commercial</td>
  936. </tr>
  937. </table>
  938. </subsection>
  939. </section>
  940. <section name="Compiler Implementations">
  941. <subsection name="miniRMI &lt;code&gt;&amp;lt;rmic&amp;gt;&lt;/code&gt; implementation">
  942. <p>miniRMI is a freeware opensource library that serves as a
  943. lightweight replacement for the original java.rmi packages and
  944. is suitable especially for applets. Ant 1.4+
  945. <code>&lt;rmic&gt;</code> adapter included.</p>
  946. <table>
  947. <tr>
  948. <th>Compatibility:</th>
  949. <td>Ant 1.4 and later</td>
  950. </tr>
  951. <tr>
  952. <th>URL:</th>
  953. <td><a href="http://dione.zcu.cz/~toman40/miniRMI/">http://dione.zcu.cz/~toman40/miniRMI/</a></td>
  954. </tr>
  955. <tr>
  956. <th>Contact:</th>
  957. <td><a href="mailto:Petr.Toman@pinknet.cz">Petr Toman</a></td>
  958. </tr>
  959. <tr>
  960. <th>License:</th>
  961. <td>Gnu Lesser Public License</td>
  962. </tr>
  963. </table>
  964. </subsection>
  965. </section>
  966. <section name="IDE and Editor Integration">
  967. <subsection name="AntFarm">
  968. <p>A plugin that integrates Ant into the jEdit editor.</p>
  969. <table>
  970. <tr>
  971. <th>Compatibility:</th>
  972. <td>bundles Ant 1.3</td>
  973. </tr>
  974. <tr>
  975. <th>URL:</th>
  976. <td><a href="http://plugins.jedit.org/plugins/AntFarm">http://plugins.jedit.org/plugins/AntFarm</a></td>
  977. </tr>
  978. <tr>
  979. <th>Contact:</th>
  980. <td><a href="mailto:jedit-devel@lists.sourceforge.net">jEdit developers mailinglist</a></td>
  981. </tr>
  982. <tr>
  983. <th>License:</th>
  984. <td>Apache Software License</td>
  985. </tr>
  986. </table>
  987. </subsection>
  988. <subsection name="AntMan">
  989. <p>An AddIn that integrates Ant with the JDeveloper IDE</p>
  990. <table>
  991. <tr>
  992. <th>Compatibility:</th>
  993. <td>Ant 1.4.1</td>
  994. </tr>
  995. <tr>
  996. <th>URL:</th>
  997. <td><a href="http://www.erudra.com/antman/index.html">http://www.erudra.com/antman/index.html</a></td>
  998. </tr>
  999. <tr>
  1000. <th>Contact:</th>
  1001. <td><a href="mailto:ashok@erudra.com">Ashok Sridhar</a></td>
  1002. </tr>
  1003. <tr>
  1004. <th>License:</th>
  1005. <td>GNU General Public License</td>
  1006. </tr>
  1007. </table>
  1008. </subsection>
  1009. <subsection name="AntRunner">
  1010. <p>An OpenTool that integrates Ant into the JBuilder IDE.</p>
  1011. <table>
  1012. <tr>
  1013. <th>Compatibility:</th>
  1014. <td>Ant 1.2 and 1.3</td>
  1015. </tr>
  1016. <tr>
  1017. <th>URL:</th>
  1018. <td><a href="http://www.dieter-bogdoll.de/java/AntRunner/">http://www.dieter-bogdoll.de/java/AntRunner/</a></td>
  1019. </tr>
  1020. <tr>
  1021. <th>Contact:</th>
  1022. <td><a href="mailto:bogdoll@users.sourceforge.net">Dieter Bogdoll</a></td>
  1023. </tr>
  1024. <tr>
  1025. <th>License:</th>
  1026. <td>GNU General Public License</td>
  1027. </tr>
  1028. </table>
  1029. </subsection>
  1030. <subsection name="AntWork">
  1031. <p>A plugin that integrates Ant into the Jext editor.</p>
  1032. <table>
  1033. <tr>
  1034. <th>Compatibility:</th>
  1035. <td>Ant 1.2 and 1.3</td>
  1036. </tr>
  1037. <tr>
  1038. <th>URL:</th>
  1039. <td><a href="ftp://jext.sourceforge.net/pub/jext/plugins/AntWork.zip">ftp://jext.sourceforge.net/pub/jext/plugins/AntWork.zip</a></td>
  1040. </tr>
  1041. <tr>
  1042. <th>Contact:</th>
  1043. <td><a href="mailto:KHartlage@t-online.de">Klaus Hartlage</a></td>
  1044. </tr>
  1045. <tr>
  1046. <th>License:</th>
  1047. <td>GNU General Public License</td>
  1048. </tr>
  1049. </table>
  1050. </subsection>
  1051. <subsection name="Eclipse">
  1052. <p>Eclipse is a universal tool platform with Ant integration.</p>
  1053. <table>
  1054. <tr>
  1055. <th>Compatibility:</th>
  1056. <td>Ant 1.3 - 1.4.1</td>
  1057. </tr>
  1058. <tr>
  1059. <th>URL:</th>
  1060. <td><a href="http://www.eclipse.org">http://www.eclipse.org</a></td>
  1061. </tr>
  1062. <tr>
  1063. <th>Contact:</th>
  1064. <td><a href="news://news.eclipse.org/eclipse.tools">news://news.eclipse.org/eclipse.tools</a></td>
  1065. </tr>
  1066. <tr>
  1067. <th>License:</th>
  1068. <td>Common Public License Version 1.0</td>
  1069. </tr>
  1070. </table>
  1071. </subsection>
  1072. <subsection name="HP RadPak">
  1073. <p>
  1074. RadPak comes with the (free) HP Bluestone HPAS J2EE server, and is primarily
  1075. a GUI tool for packaging and deploying java web and EJB applications
  1076. as WAR and EAR files. The tool is ant based, and can be used with
  1077. as a GUI for general ant development, providing form based entry
  1078. of task attributes, and an animated display of task
  1079. execution.
  1080. </p>
  1081. <table>
  1082. <tr>
  1083. <th>Compatibility:</th>
  1084. <td>bundles Ant 1.3 and docs; adds a jar of extra tasks
  1085. to any existing ant installation under ANT_HOME</td>
  1086. </tr>
  1087. <tr>
  1088. <th>URL:</th>
  1089. <td><a href="http://www.bluestone.com/products/hp-as/">http://www.bluestone.com/products/hp-as/</a></td>
  1090. </tr>
  1091. <tr>
  1092. <th>License:</th>
  1093. <td>Proprietary but free to download</td>
  1094. </tr>
  1095. </table>
  1096. </subsection>
  1097. <subsection name="IntelliJ IDEA 2.0">
  1098. <p>Java IDE with refactoring support and Ant integration.</p>
  1099. <table>
  1100. <tr>
  1101. <th>Compatibility:</th>
  1102. <td>bundles Ant 1.3</td>
  1103. </tr>
  1104. <tr>
  1105. <th>URL:</th>
  1106. <td><a href="http://www.intellij.com/idea/">http://www.intellij.com/idea/</a></td>
  1107. </tr>
  1108. <tr>
  1109. <th>Contact:</th>
  1110. <td><a href="mailto:support@intellij.com">support@intellij.com</a></td>
  1111. </tr>
  1112. <tr>
  1113. <th>License:</th>
  1114. <td>Commercial</td>
  1115. </tr>
  1116. </table>
  1117. </subsection>
  1118. <subsection name="JDE(E) 2.2.8">
  1119. <p>The Java Development Environment for Emacs (JDEE) supports
  1120. Apache Ant as one of three built-in ways to build your
  1121. applications.</p>
  1122. <table>
  1123. <tr>
  1124. <th>Compatibility:</th>
  1125. <td>Ant 1.2 and later</td>
  1126. </tr>
  1127. <tr>
  1128. <th>URL:</th>
  1129. <td><a href="http://jde.sunsite.dk/">http://jde.sunsite.dk/</a></td>
  1130. </tr>
  1131. <tr>
  1132. <th>Contact:</th>
  1133. <td><a href="mailto:jde-subscribe@sunsite.auc.dk">JDEE Mailing list.</a></td>
  1134. </tr>
  1135. <tr>
  1136. <th>License:</th>
  1137. <td>GNU General Public License</td>
  1138. </tr>
  1139. </table>
  1140. </subsection>
  1141. <subsection name="NetBeans / Sun ONE Studio">
  1142. <p>A module that integrates Ant into the NetBeans or Sun ONE Studio (formerly Forte for Java) IDEs.</p>
  1143. <table>
  1144. <tr>
  1145. <th>Compatibility:</th>
  1146. <td>bundles Ant 1.4.1</td>
  1147. </tr>
  1148. <tr>
  1149. <th>URL:</th>
  1150. <td><a href="http://ant.netbeans.org/">http://ant.netbeans.org/</a></td>
  1151. </tr>
  1152. <tr>
  1153. <th>Contact:</th>
  1154. <td><a href="mailto:nbdev@netbeans.org">nbdev@netbeans.org</a></td>
  1155. </tr>
  1156. <tr>
  1157. <th>License:</th>
  1158. <td>Sun Public License</td>
  1159. </tr>
  1160. </table>
  1161. </subsection>
  1162. <subsection name="Oracle9i JDeveloper">
  1163. <p>Java IDE with support for Ant.</p>
  1164. <table>
  1165. <tr>
  1166. <th>Compatibility:</th>
  1167. <td>Ant 1.5.1</td>
  1168. </tr>
  1169. <tr>
  1170. <th>URL:</th>
  1171. <td><a href="http://otn.oracle.com/products/jdev/">http://otn.oracle.com/products/jdev/</a></td>
  1172. </tr>
  1173. <tr>
  1174. <th>Contact:</th>
  1175. <td><a href="mailto:jdeveloperbeta_us@oracle.com">jdeveloperbeta_us@oracle.com</a></td>
  1176. </tr>
  1177. <tr>
  1178. <th>License:</th>
  1179. <td>Commercial</td>
  1180. </tr>
  1181. </table>
  1182. </subsection>
  1183. <subsection name="WebSphere Studio Application Developer">
  1184. <p>WSAD features Ant integrate by virtue of being built on the Eclipse tools platform.</p>
  1185. <table>
  1186. <tr>
  1187. <th>Compatibility:</th>
  1188. <td>bundles Ant 1.4.1</td>
  1189. </tr>
  1190. <tr>
  1191. <th>Article:</th>
  1192. <td><a href="http://www7b.software.ibm.com/wsdd/library/techarticles/0203_searle/searle1.html">Ant Integration Part1</a></td>
  1193. </tr>
  1194. <tr>
  1195. <th>License:</th>
  1196. <td>Commercial</td>
  1197. </tr>
  1198. </table>
  1199. </subsection>
  1200. </section>
  1201. </body>
  1202. </document>