Knowledge (XXG)

Apache Ant

Source 📝

1619: 284: 2466: 25: 129: 951: 1012:, can be complex and verbose, as they are hierarchical, partly ordered, and pervasively cross-linked. This complexity can be a barrier to learning. The build files of large or complex projects can become unmanageably large. Good design and modularization of build files can improve readability but not necessarily reduce size. 1051:
In makefiles, any rule to create one file type from another can be written inline within the makefile. For example, one may transform a document into some other format by using rules to execute another tool. Creating a similar task in Ant is more complex: a separate task must be written in Java and
816:
This Ant task has the same name as the common Java command-line utility, JAR, but is really a call to the Ant program's built-in JAR/ZIP file support. This detail is not relevant to most end users, who just get the JAR they wanted, with the files they asked for.
1071:
IDE uses Ant for its internal build system. As both these IDEs are very popular development platforms, they can simplify Ant use significantly. (As a bonus, Ant scripts generated by NetBeans can be used outside that IDE as standalone scripts.)
1052:
included with the Ant build file in order to handle the same type of functionality. However, this separation can enhance the readability of the Ant script by hiding some of the details of how a task is executed on different platforms.
389:
Several proposals for an Ant version 2 have been made, such as AntEater by James Duncan Davidson, Myrmidon by Peter Donald and Mutant by Conor MacNeill, none of which were able to find large acceptance with the developer community.
936:
Additionally, Ant does not differentiate between forward slash or backslash for directories and semicolon or colon for path separators. It converts each to the symbol appropriate to the platform on which it executes.
1047:
loop, a property cannot be re-evaluated for a sub-value which may be part of the iteration. (Some third-party extensions facilitate a workaround; AntXtras flow-control tasksets do provide for cursor redefinition for
828:
tasks to set up the command lines, and handle all the details of mapping from information in the build file to the program's arguments and interpreting the return value. Users can see which tasks do this (e.g.
2512: 1646: 2517: 2492: 2527: 1027:—use default values for options that are not consistent with more recent versions of the tasks. Changing those defaults would break existing Ant scripts. 2299: 1639: 1030:
When expanding properties in a string or text element, undefined properties are not raised as an error, but left as an unexpanded reference (e.g.
386:
tool to build Tomcat from directives in an XML "build file". Ant (version 1.1) was officially released as a stand-alone product on July 19, 2000.
845:), by trying to execute the task on a system without the underlying program on the path, or without a full Java Development Kit (JDK) installed. 1469: 774:
Within each target are the actions that Ant must take to build that target; these are performed using built-in tasks. For example, to build the
382:
platform, but in the open-source world, there was no way of controlling which platform was used to build Tomcat; so Ant was created as a simple
2507: 1593: 1564: 1539: 1514: 1483: 1433: 1408: 1279: 393:
At one time (2002), Ant was the build tool used by most Java development projects. For example, most open source Java developers included
2470: 1632: 1064: 1458: 1086: 994: 108: 1236: 961: 434:
WOProject-Ant is just one of many examples of a task extension written for Ant. These extensions are installed by copying their
2522: 880:
commands. Ant provides built-in functionality that is designed to behave the same on all platforms. For example, in the sample
1655: 46: 2242: 463:
provides a collection of tasks such as conditional statements and operations on properties as well as other useful tasks.
89: 208: 782:(which Ant will do only if it does not already exist) and then invoke the Java compiler. Therefore, the tasks used are 61: 313: 225: 182: 42: 976: 1475: 379: 332: 153: 972: 68: 35: 2497: 2502: 2247: 356: 1527:
Extreme Programming with Ant: Building and Deploying Java Applications with JSP, EJB, XSLT, XDoclet, and JUnit
853:
Ant is intended to work with all systems for which Java runtimes are available. It is most commonly used with
1721: 1367:, pp. 121–125, Chapter §5 Building a Project - Assembling the project - Manipulating the File Location. 402: 75: 2262: 877: 1581: 2532: 2186: 348: 141: 57: 1502: 1400: 383: 375: 371: 336: 1444: 2126: 820:
Many Ant tasks delegate their work to external programs, either native or Java. They use Ant's own
406: 244: 1283: 876:
Ant was designed to be more portable than Make. Compared to Make, Ant uses less platform-specific
283: 1716: 1061: 261: 232: 1585: 1575: 1506: 1495: 2141: 2031: 1916: 1781: 1766: 1746: 1589: 1560: 1535: 1510: 1479: 1454: 1429: 1425: 1404: 908: 854: 1550: 1525: 1377: 892:
directory and everything in it. In a Makefile this would typically be done with the command:
504:
file is listed below for a simple Java "Hello, world" application. It defines four targets -
2350: 2224: 2181: 2171: 1871: 1831: 1816: 1771: 1311: 1081: 359: 352: 297: 256: 442:
directory. Once this is done, these task extensions can be invoked directly in the typical
2385: 2380: 2360: 2216: 2196: 2156: 2151: 2146: 2131: 2086: 1861: 1751: 1681: 1676: 1671: 1556: 1531: 1040: 305: 82: 2451: 2425: 2420: 2375: 2335: 2278: 2252: 2234: 2051: 2046: 2026: 2021: 2016: 1976: 1901: 1796: 1791: 1776: 1756: 1686: 1618: 870: 485: 451: 328: 1327:, pp. 266–267, Chapter §10 Writing Custom Tasks - Using Third-Party Custom Tasks. 2486: 2410: 2365: 2340: 2211: 2201: 2176: 2161: 2136: 2081: 2041: 1981: 1956: 1951: 1931: 1911: 1906: 1881: 1866: 1801: 1786: 1696: 1691: 423: 367: 301: 2405: 2390: 2345: 2294: 2257: 2206: 2121: 2116: 2106: 2101: 2096: 2091: 2071: 2066: 2011: 2006: 1996: 1961: 1946: 1936: 1921: 1891: 1886: 1851: 1846: 1836: 1826: 1821: 1811: 1761: 1736: 1711: 1706: 1351: 1105: 1093: 917:
In an Ant build file the same goal would be accomplished using a built-in command:
869:
operating systems but has also been used on other platforms such as OS/2, OpenVMS,
470: 413: 1624: 1205: 1203: 2430: 2370: 2325: 2166: 2111: 2076: 1986: 1966: 1941: 1926: 1896: 1876: 1841: 1741: 1731: 1726: 790:. These perform a similar task to the command-line utilities of the same name. 24: 2435: 2395: 2355: 2304: 2061: 2056: 2036: 1856: 1806: 1099: 450:
developers to use ant in building their frameworks and apps, instead of using
447: 249: 148: 136: 128: 1419: 899: 1222: 1114:, Ant-like tool targeted at the .NET Framework environment rather than Java 1102:, a dependency manager which integrates tightly with Ant, subproject of Ant 1183: 1991: 1971: 1068: 481: 422:, which is similar software, was created in 2008, which in contrary uses 317: 397:
files with their distribution. Because Ant made it trivial to integrate
363: 237: 1138: 1471:
ANT Java Notes: An Accelerated Intro Guide to the Java ANT Build Tool
1450: 1297: 1117: 419: 316:
language and requires the Java platform. Unlike Make, which uses the
979:. Statements consisting only of original research should be removed. 528:
target as a dependency. This tells Ant that before it can start the
1108:, a project management and build automation tool primarily for Java 2415: 2330: 2309: 2001: 1043:
is not supported. For instance, when working within an Antcontrib
862: 858: 454: 398: 1250: 2400: 2191: 1111: 904: 866: 474: 412:
In 2004 Apache created a new tool with a similar purpose called
309: 214: 1628: 1337: 1009: 944: 489: 401:
tests with the build process, Ant allowed developers to adopt
321: 18: 1060:) that provide much of the missing functionality. Also, the 1612: 1159: 907:-specific command unavailable in some other environments. 300:
processes for Java applications which originated from the
272: 324:
to describe the code build process and its dependencies.
2513:
Free software programmed in Java (programming language)
968: 646:"compile the Java source code to class files" 312:. It is similar to Make, but is implemented using the 2444: 2318: 2287: 2271: 2233: 1662: 1067:(IDE) can build and execute Ant scripts, while the 520:, each of which has an associated description. The 267: 255: 243: 231: 221: 207: 181: 159: 147: 135: 49:. Unsourced material may be challenged and removed. 1494: 1280:"WOProject-Ant – WOProject / WOLips – Confluence" 703:"create a Jar file for the application" 426:(and a few other languages) code instead of XML. 1524:Niemeyer, Glenn; Poteet, Jeremy (May 29, 2003). 1395:Loughran, Steve; Hatcher, Erik (July 12, 2007). 778:target Ant must first create a directory called 1056:There exist third-party Ant extensions (called 304:project in early 2000 as a replacement for the 1493:Hatcher, Erik; Loughran, Steve (August 2002). 1640: 1096:, a tool for turning XML into executable code 8: 378:version of Make was used to build it on the 121: 1212:, pp. 5–9, Chapter §1 Introducing Ant. 793:Another task used in this example is named 469:implements tasks and types for networking, 347:Ant ("Another Neat Tool") was conceived by 1647: 1633: 1625: 1617: 1223:"Why do you call it Ant? – Apache Ant FAQ" 282: 127: 120: 1184:"Apache Ant - Frequently Asked Questions" 995:Learn how and when to remove this message 109:Learn how and when to remove this message 1130: 1364: 1324: 1251:"The Early History of Ant Development" 1209: 1008:Ant build files, which are written in 2518:Java (programming language) libraries 1549:Williamson, Alan (November 1, 2002). 1037:Ant has limited fault handling rules. 613:"remove all artifact files" 574:"remove intermediate files" 541:<?xml version="1.0"?> 446:file. The WOProject extensions allow 7: 1577:ANT: The Java Build Tool In Practice 1120:, a JVM build tool built with Groovy 47:adding citations to reliable sources 2493:Apache Software Foundation projects 1044: 1024: 1020: 1016: 842: 838: 834: 830: 825: 821: 1418:Holzner, Steven (April 13, 2005). 1266:Java Tools for eXtreme Programming 1065:integrated development environment 532:target it must first complete the 14: 2528:Software using the Apache license 1249:MacNeill, Conor (4 August 2005). 1087:List of build automation software 1015:Many of the older tasks, such as 188:1.10.14 / August 20, 2023 2465: 2464: 1574:Matzke, Bernd (September 2003). 1468:Bell, Alexis T. (July 7, 2005). 949: 492:, and filesystem manipulations. 480:Other task extensions exist for 23: 1237:"Myrmidon: The Ant2.0 Proposal" 34:needs additional citations for 1656:The Apache Software Foundation 1476:Virtualbookworm.com Publishing 1: 2508:Cross-platform free software 1376:Apache Ant Manual. Section 975:the claims made and adding 2549: 1552:Ant – Developer's Handbook 1421:Ant – The Definitive Guide 911:, for example, would use: 333:Apache Software Foundation 154:Apache Software Foundation 2460: 1497:Java Development with Ant 1139:"Apache Ant Project News" 298:automating software build 203: 177: 126: 1443:Moodie, Matthew (2005). 1041:Lazy property evaluation 919: 799: 754:"HelloProgram" 538: 1352:"Overview of Ant Tasks" 1338:"ant-contrib.unkrig.de" 1032:$ {unassigned.property} 403:test-driven development 296:is a software tool for 190:; 13 months ago 2523:Java development tools 1160:"Apache Ant - Welcome" 748:"Main-Class" 733:"**/*.class" 477:processing and other. 165:; 24 years ago 1378:"System Requirements" 808:"hello.jar" 715:"hello.jar" 625:"hello.jar" 467:Ant-contrib.unkrig.de 349:James Duncan Davidson 142:James Duncan Davidson 1503:Manning Publications 1401:Manning Publications 914:rmdir /S /Q classes 384:platform-independent 43:improve this article 1582:Charles River Media 1312:"Ant-Contrib Tasks" 928:"classes" 888:target deletes the 727:"classes" 697:"compile" 676:"classes" 658:"classes" 640:"compile" 601:"clobber" 586:"classes" 556:"compile" 407:extreme programming 337:open-source project 123: 1717:Apache HTTP Server 960:possibly contains 327:Released under an 262:Apache License 2.0 137:Original author(s) 16:Java software tool 2480: 2479: 1595:978-1-58450-248-7 1566:978-0-672-32426-0 1541:978-0-672-32562-5 1516:978-1-930110-58-8 1485:978-1-58939-738-5 1435:978-0-596-00609-9 1410:978-1-932394-80-1 1005: 1004: 997: 962:original research 909:Microsoft Windows 760:</manifest> 607:"clean" 568:"clean" 550:"Hello" 524:target lists the 473:user interfaces, 438:files into ant's 370:, for release as 291: 290: 163:19 July 2000 119: 118: 111: 93: 2540: 2498:Build automation 2468: 2467: 1649: 1642: 1635: 1626: 1621: 1616: 1615: 1613:Official website 1599: 1580:(1st ed.). 1570: 1555:(1st ed.). 1545: 1530:(1st ed.). 1520: 1501:(1st ed.). 1500: 1489: 1474:(1st ed.). 1464: 1449:(1st ed.). 1439: 1424:(2nd ed.). 1414: 1399:(2nd ed.). 1381: 1374: 1368: 1362: 1356: 1355: 1348: 1342: 1341: 1334: 1328: 1322: 1316: 1315: 1308: 1302: 1301: 1294: 1288: 1287: 1282:. Archived from 1276: 1270: 1269: 1261: 1255: 1254: 1246: 1240: 1233: 1227: 1226: 1219: 1213: 1207: 1198: 1197: 1195: 1194: 1180: 1174: 1173: 1171: 1170: 1156: 1150: 1149: 1147: 1145: 1135: 1082:Build automation 1046: 1033: 1026: 1022: 1018: 1000: 993: 989: 986: 980: 977:inline citations 953: 952: 945: 932: 929: 926: 923: 902: 895:rm -rf classes/ 891: 884:file above, the 883: 844: 840: 836: 832: 827: 823: 812: 809: 806: 803: 796: 789: 785: 781: 777: 770: 769:</project> 767: 764: 761: 758: 755: 752: 749: 746: 743: 740: 739:<manifest> 737: 734: 731: 728: 725: 722: 719: 716: 713: 710: 707: 704: 701: 698: 695: 692: 689: 686: 683: 680: 677: 674: 671: 668: 665: 662: 659: 656: 653: 650: 647: 644: 641: 638: 635: 632: 629: 626: 623: 620: 617: 614: 611: 608: 605: 602: 599: 596: 593: 590: 587: 584: 581: 578: 575: 572: 569: 566: 563: 560: 557: 554: 551: 548: 545: 542: 535: 531: 527: 523: 519: 515: 511: 507: 503: 468: 462: 445: 441: 437: 396: 353:Sun Microsystems 351:while preparing 287: 286: 279: 276: 274: 217: 198: 196: 191: 173: 171: 166: 131: 124: 114: 107: 103: 100: 94: 92: 51: 27: 19: 2548: 2547: 2543: 2542: 2541: 2539: 2538: 2537: 2503:Compiling tools 2483: 2482: 2481: 2476: 2456: 2440: 2314: 2283: 2267: 2229: 1664: 1658: 1653: 1611: 1610: 1607: 1602: 1596: 1573: 1567: 1559:. p. 456. 1557:SAMS Publishing 1548: 1542: 1534:. p. 456. 1532:SAMS Publishing 1523: 1517: 1492: 1486: 1478:. p. 268. 1467: 1461: 1442: 1436: 1428:. p. 334. 1417: 1411: 1403:. p. 600. 1394: 1390: 1388:Further reading 1385: 1384: 1375: 1371: 1363: 1359: 1350: 1349: 1345: 1336: 1335: 1331: 1323: 1319: 1310: 1309: 1305: 1296: 1295: 1291: 1278: 1277: 1273: 1263: 1262: 1258: 1248: 1247: 1243: 1234: 1230: 1221: 1220: 1216: 1208: 1201: 1192: 1190: 1182: 1181: 1177: 1168: 1166: 1158: 1157: 1153: 1143: 1141: 1137: 1136: 1132: 1127: 1078: 1031: 1001: 990: 984: 981: 966: 954: 950: 943: 934: 933: 930: 927: 924: 921: 915: 898: 896: 889: 881: 851: 835:<signjar> 814: 813: 810: 807: 804: 801: 794: 787: 783: 779: 775: 772: 771: 768: 766:</target> 765: 762: 759: 756: 753: 750: 747: 744: 741: 738: 735: 732: 729: 726: 723: 720: 717: 714: 711: 708: 705: 702: 699: 696: 693: 691:"jar" 690: 687: 684: 682:</target> 681: 678: 675: 672: 669: 666: 663: 660: 657: 654: 651: 648: 645: 642: 639: 636: 633: 631:</target> 630: 627: 624: 621: 618: 615: 612: 609: 606: 603: 600: 597: 594: 592:</target> 591: 588: 585: 582: 579: 576: 573: 570: 567: 564: 561: 558: 555: 552: 549: 546: 543: 540: 533: 529: 525: 521: 517: 513: 509: 505: 501: 498: 466: 460: 443: 439: 435: 432: 394: 345: 318:Makefile format 281: 271: 213: 199: 194: 192: 189: 169: 167: 164: 160:Initial release 115: 104: 98: 95: 52: 50: 40: 28: 17: 12: 11: 5: 2546: 2544: 2536: 2535: 2530: 2525: 2520: 2515: 2510: 2505: 2500: 2495: 2485: 2484: 2478: 2477: 2475: 2474: 2461: 2458: 2457: 2455: 2454: 2452:Apache License 2448: 2446: 2442: 2441: 2439: 2438: 2433: 2428: 2423: 2418: 2413: 2408: 2403: 2398: 2393: 2388: 2383: 2378: 2373: 2368: 2363: 2358: 2353: 2348: 2343: 2338: 2333: 2328: 2322: 2320: 2316: 2315: 2313: 2312: 2307: 2302: 2297: 2291: 2289: 2288:Other projects 2285: 2284: 2282: 2281: 2275: 2273: 2269: 2268: 2266: 2265: 2260: 2255: 2250: 2245: 2239: 2237: 2231: 2230: 2228: 2227: 2222: 2219: 2214: 2209: 2204: 2199: 2194: 2189: 2187:Traffic Server 2184: 2179: 2174: 2169: 2164: 2159: 2154: 2149: 2144: 2139: 2134: 2129: 2124: 2119: 2114: 2109: 2104: 2099: 2094: 2089: 2084: 2079: 2074: 2069: 2064: 2059: 2054: 2049: 2044: 2039: 2034: 2029: 2024: 2019: 2014: 2009: 2004: 1999: 1994: 1989: 1984: 1979: 1974: 1969: 1964: 1959: 1954: 1949: 1944: 1939: 1934: 1929: 1924: 1919: 1914: 1909: 1904: 1899: 1894: 1889: 1884: 1879: 1874: 1869: 1864: 1859: 1854: 1849: 1844: 1839: 1834: 1829: 1824: 1819: 1814: 1809: 1804: 1799: 1794: 1789: 1784: 1779: 1774: 1769: 1764: 1759: 1754: 1749: 1744: 1739: 1734: 1729: 1724: 1719: 1714: 1709: 1704: 1699: 1694: 1689: 1684: 1679: 1674: 1668: 1666: 1660: 1659: 1654: 1652: 1651: 1644: 1637: 1629: 1623: 1622: 1606: 1605:External links 1603: 1601: 1600: 1594: 1571: 1565: 1546: 1540: 1521: 1515: 1490: 1484: 1465: 1459: 1446:Pro Apache Ant 1440: 1434: 1426:O'Reilly Media 1415: 1409: 1391: 1389: 1386: 1383: 1382: 1369: 1357: 1343: 1329: 1317: 1303: 1289: 1286:on 2009-01-08. 1271: 1264:Wiley (2002). 1256: 1241: 1235:Peter Donald. 1228: 1214: 1199: 1188:ant.apache.org 1175: 1164:ant.apache.org 1151: 1129: 1128: 1126: 1123: 1122: 1121: 1115: 1109: 1103: 1097: 1091: 1090: 1089: 1077: 1074: 1054: 1053: 1049: 1038: 1035: 1028: 1013: 1003: 1002: 985:September 2011 957: 955: 948: 942: 939: 920: 913: 894: 850: 847: 800: 539: 497: 494: 486:.NET Framework 431: 428: 366:engine, later 344: 341: 329:Apache License 308:build tool of 289: 288: 269: 265: 264: 259: 253: 252: 247: 241: 240: 235: 229: 228: 223: 219: 218: 215:Ant Repository 211: 205: 204: 201: 200: 187: 185: 183:Stable release 179: 178: 175: 174: 161: 157: 156: 151: 145: 144: 139: 133: 132: 117: 116: 31: 29: 22: 15: 13: 10: 9: 6: 4: 3: 2: 2545: 2534: 2531: 2529: 2526: 2524: 2521: 2519: 2516: 2514: 2511: 2509: 2506: 2504: 2501: 2499: 2496: 2494: 2491: 2490: 2488: 2473: 2472: 2463: 2462: 2459: 2453: 2450: 2449: 2447: 2443: 2437: 2434: 2432: 2429: 2427: 2424: 2422: 2419: 2417: 2414: 2412: 2409: 2407: 2404: 2402: 2399: 2397: 2394: 2392: 2389: 2387: 2384: 2382: 2379: 2377: 2374: 2372: 2369: 2367: 2364: 2362: 2359: 2357: 2354: 2352: 2349: 2347: 2344: 2342: 2339: 2337: 2334: 2332: 2329: 2327: 2324: 2323: 2321: 2317: 2311: 2308: 2306: 2303: 2301: 2298: 2296: 2293: 2292: 2290: 2286: 2280: 2277: 2276: 2274: 2270: 2264: 2261: 2259: 2256: 2254: 2251: 2249: 2246: 2244: 2241: 2240: 2238: 2236: 2232: 2226: 2223: 2220: 2218: 2215: 2213: 2210: 2208: 2205: 2203: 2200: 2198: 2195: 2193: 2190: 2188: 2185: 2183: 2180: 2178: 2175: 2173: 2170: 2168: 2165: 2163: 2160: 2158: 2155: 2153: 2150: 2148: 2145: 2143: 2140: 2138: 2135: 2133: 2130: 2128: 2125: 2123: 2120: 2118: 2115: 2113: 2110: 2108: 2105: 2103: 2100: 2098: 2095: 2093: 2090: 2088: 2085: 2083: 2080: 2078: 2075: 2073: 2070: 2068: 2065: 2063: 2060: 2058: 2055: 2053: 2050: 2048: 2045: 2043: 2040: 2038: 2035: 2033: 2030: 2028: 2025: 2023: 2020: 2018: 2015: 2013: 2010: 2008: 2005: 2003: 2000: 1998: 1995: 1993: 1990: 1988: 1985: 1983: 1980: 1978: 1975: 1973: 1970: 1968: 1965: 1963: 1960: 1958: 1955: 1953: 1950: 1948: 1945: 1943: 1940: 1938: 1935: 1933: 1930: 1928: 1925: 1923: 1920: 1918: 1915: 1913: 1910: 1908: 1905: 1903: 1900: 1898: 1895: 1893: 1890: 1888: 1885: 1883: 1880: 1878: 1875: 1873: 1870: 1868: 1865: 1863: 1860: 1858: 1855: 1853: 1850: 1848: 1845: 1843: 1840: 1838: 1835: 1833: 1830: 1828: 1825: 1823: 1820: 1818: 1815: 1813: 1810: 1808: 1805: 1803: 1800: 1798: 1795: 1793: 1790: 1788: 1785: 1783: 1780: 1778: 1775: 1773: 1770: 1768: 1765: 1763: 1760: 1758: 1755: 1753: 1750: 1748: 1745: 1743: 1740: 1738: 1735: 1733: 1730: 1728: 1725: 1723: 1720: 1718: 1715: 1713: 1710: 1708: 1705: 1703: 1700: 1698: 1695: 1693: 1690: 1688: 1685: 1683: 1680: 1678: 1675: 1673: 1670: 1669: 1667: 1661: 1657: 1650: 1645: 1643: 1638: 1636: 1631: 1630: 1627: 1620: 1614: 1609: 1608: 1604: 1597: 1591: 1587: 1583: 1579: 1578: 1572: 1568: 1562: 1558: 1554: 1553: 1547: 1543: 1537: 1533: 1529: 1528: 1522: 1518: 1512: 1508: 1504: 1499: 1498: 1491: 1487: 1481: 1477: 1473: 1472: 1466: 1462: 1460:1-59059-559-9 1456: 1452: 1448: 1447: 1441: 1437: 1431: 1427: 1423: 1422: 1416: 1412: 1406: 1402: 1398: 1397:Ant in Action 1393: 1392: 1387: 1379: 1373: 1370: 1366: 1361: 1358: 1353: 1347: 1344: 1339: 1333: 1330: 1326: 1321: 1318: 1313: 1307: 1304: 1299: 1298:"Ant-Contrib" 1293: 1290: 1285: 1281: 1275: 1272: 1268:. p. 76. 1267: 1260: 1257: 1252: 1245: 1242: 1238: 1232: 1229: 1224: 1218: 1215: 1211: 1206: 1204: 1200: 1189: 1185: 1179: 1176: 1165: 1161: 1155: 1152: 1140: 1134: 1131: 1124: 1119: 1116: 1113: 1110: 1107: 1104: 1101: 1098: 1095: 1092: 1088: 1085: 1084: 1083: 1080: 1079: 1075: 1073: 1070: 1066: 1063: 1059: 1050: 1042: 1039: 1036: 1029: 1017:<javac> 1014: 1011: 1007: 1006: 999: 996: 988: 978: 974: 970: 964: 963: 958:This section 956: 947: 946: 940: 938: 918: 912: 910: 906: 901: 893: 887: 879: 874: 872: 868: 864: 860: 856: 848: 846: 839:<chmod> 818: 798: 791: 742:<attribute 670:"." 537: 495: 493: 491: 487: 483: 478: 476: 472: 464: 458: 456: 453: 449: 429: 427: 425: 421: 417: 415: 410: 408: 404: 400: 391: 387: 385: 381: 377: 373: 369: 368:Apache Tomcat 365: 361: 358: 354: 350: 342: 340: 338: 334: 330: 325: 323: 319: 315: 311: 307: 303: 302:Apache Tomcat 299: 295: 285: 278: 270: 266: 263: 260: 258: 254: 251: 248: 246: 242: 239: 236: 234: 230: 227: 224: 220: 216: 212: 210: 206: 202: 186: 184: 180: 176: 162: 158: 155: 152: 150: 146: 143: 140: 138: 134: 130: 125: 113: 110: 102: 91: 88: 84: 81: 77: 74: 70: 67: 63: 60: –  59: 55: 54:Find sources: 48: 44: 38: 37: 32:This article 30: 26: 21: 20: 2533:XML software 2469: 2127:SpamAssassin 1701: 1576: 1551: 1526: 1496: 1470: 1445: 1420: 1396: 1372: 1360: 1346: 1332: 1320: 1306: 1292: 1284:the original 1274: 1265: 1259: 1244: 1231: 1217: 1191:. Retrieved 1187: 1178: 1167:. Retrieved 1163: 1154: 1142:. Retrieved 1133: 1106:Apache Maven 1094:Apache Jelly 1057: 1055: 1025:<java> 1021:<exec> 991: 982: 959: 935: 916: 897: 885: 875: 852: 826:<java> 822:<exec> 819: 815: 792: 773: 763:</jar> 700:description= 643:description= 610:description= 571:description= 499: 479: 465: 459: 433: 418: 411: 392: 388: 346: 335:, Ant is an 326: 293: 292: 149:Developer(s) 105: 96: 86: 79: 72: 65: 58:"Apache Ant" 53: 41:Please help 36:verification 33: 1584:. pp.  1505:. pp.  1365:Moodie 2005 1325:Moodie 2005 1210:Moodie 2005 1045:<for> 941:Limitations 849:Portability 843:<rpm> 831:<csv> 721:<fileset 544:<project 376:proprietary 372:open-source 320:, Ant uses 2487:Categories 2356:Deltacloud 2142:Subversion 2032:OрenOffice 1917:Jackrabbit 1857:FreeMarker 1782:CloudStack 1767:CarbonData 1747:Bloodhound 1193:2022-01-25 1169:2022-01-25 1125:References 1100:Apache Ivy 969:improve it 922:<delete 865:and other 685:<target 634:<target 619:<delete 595:<target 580:<delete 562:<target 461:Antcontrib 448:WebObjects 430:Extensions 294:Apache Ant 250:Build tool 222:Written in 209:Repository 195:2023-08-20 170:2000-07-19 122:Apache Ant 69:newspapers 2351:Continuum 2272:Incubator 2225:ZooKeeper 2182:Trafodion 2172:TinkerPop 1872:Guacamole 1832:Empire-db 1817:Directory 1772:Cassandra 1663:Top-level 1144:30 August 973:verifying 882:build.xml 873:, HP-UX. 805:destfile= 730:includes= 712:destfile= 664:<javac 652:<mkdir 502:build.xml 500:A sample 444:build.xml 395:build.xml 357:reference 99:July 2020 2471:Category 2445:Licenses 2386:Marmotta 2217:XMLBeans 2197:Velocity 2157:Tapestry 2152:SystemDS 2147:Superset 2137:Struts 2 2132:Struts 1 2087:RocketMQ 1992:NetBeans 1972:mod_perl 1862:Geronimo 1752:Brooklyn 1682:Airavata 1677:ActiveMQ 1672:Accumulo 1665:projects 1076:See also 1069:NetBeans 776:compile 694:depends= 673:destdir= 604:depends= 553:default= 536:target. 482:Perforce 233:Platform 2426:Tuscany 2421:Stanbol 2381:Jakarta 2376:Harmony 2336:Beehive 2279:Taverna 2263:Logging 2235:Commons 2052:Phoenix 2047:Parquet 2027:OpenNLP 2022:OpenJPA 2017:OpenEJB 1977:MyFaces 1902:Iceberg 1797:CouchDB 1792:Cordova 1777:Cayenne 1757:Calcite 1687:Airflow 1062:Eclipse 1058:antlibs 1048:loops.) 967:Please 890:classes 871:Solaris 855:Windows 802:<jar 780:classes 709:<jar 667:srcdir= 534:compile 526:compile 514:compile 510:clobber 496:Example 457:suite. 452:Apple's 380:Solaris 364:Servlet 343:History 331:by the 275:.apache 268:Website 257:License 238:Java SE 193: ( 168: ( 83:scholar 2366:Giraph 2341:iBATIS 2253:Daemon 2212:Xerces 2202:Wicket 2177:Tomcat 2162:Thrift 2082:Roller 2042:PDFBox 1982:Mynewt 1957:Mahout 1952:Lucene 1932:JMeter 1912:Impala 1907:Ignite 1882:Hadoop 1867:Groovy 1802:cTAKES 1787:Cocoon 1697:Ambari 1692:Allura 1592:  1563:  1538:  1513:  1482:  1457:  1451:Apress 1432:  1407:  1118:Gradle 751:value= 424:Groovy 420:Gradle 280:  85:  78:  71:  64:  56:  2416:Sqoop 2411:Slide 2406:Shale 2401:River 2391:MXNet 2346:Click 2331:AxKit 2319:Attic 2310:Log4j 2295:Batik 2258:Jelly 2221:Yetus 2207:Xalan 2122:Storm 2117:Spark 2107:Sling 2102:SINGA 2097:Shiro 2092:Samza 2072:Pivot 2067:Pinot 2012:Oozie 2007:OFBiz 2002:NuttX 1997:Nutch 1962:Maven 1947:Kylin 1937:Kafka 1922:James 1892:Helix 1887:HBase 1852:Flume 1847:Flink 1837:Felix 1827:Druid 1822:Drill 1812:Derby 1762:Camel 1737:Axis2 1712:Arrow 1707:Aries 931:/> 903:is a 886:clean 878:shell 863:macOS 859:Linux 788:javac 784:mkdir 757:/> 745:name= 736:/> 688:name= 679:/> 661:/> 637:name= 628:/> 622:file= 598:name= 589:/> 565:name= 547:name= 506:clean 471:Swing 455:Xcode 414:Maven 399:JUnit 90:JSTOR 76:books 2431:Wave 2371:Hama 2361:Etch 2326:Apex 2243:BCEL 2192:UIMA 2167:Tika 2112:Solr 2077:Qpid 1987:NiFi 1967:MINA 1942:Kudu 1927:Jena 1897:Hive 1877:Gump 1842:Flex 1742:Beam 1732:Axis 1727:Avro 1590:ISBN 1561:ISBN 1536:ISBN 1511:ISBN 1480:ISBN 1455:ISBN 1430:ISBN 1405:ISBN 1146:2023 1112:NAnt 1023:and 925:dir= 905:Unix 867:Unix 824:and 811:> 786:and 724:dir= 718:> 706:> 655:dir= 649:> 616:> 583:dir= 577:> 559:> 516:and 475:JSON 436:.jar 405:and 374:. A 362:and 314:Java 310:Unix 306:Make 277:.org 245:Type 226:Java 62:news 2436:XML 2396:ODE 2305:Ivy 2300:FOP 2248:BSF 2062:Pig 2057:POI 2037:ORC 1807:CXF 1722:APR 1702:Ant 1586:280 1507:672 1010:XML 971:by 795:jar 530:jar 522:jar 518:jar 490:EJB 440:lib 416:. 360:JSP 355:'s 322:XML 273:ant 45:by 2489:: 1588:. 1509:. 1453:. 1202:^ 1186:. 1162:. 1034:). 1019:, 900:rm 861:, 857:, 841:, 837:, 833:, 797:: 512:, 508:, 488:, 484:, 409:. 339:. 1648:e 1641:t 1634:v 1598:. 1569:. 1544:. 1519:. 1488:. 1463:. 1438:. 1413:. 1380:. 1354:. 1340:. 1314:. 1300:. 1253:. 1239:. 1225:. 1196:. 1172:. 1148:. 998:) 992:( 987:) 983:( 965:. 197:) 172:) 112:) 106:( 101:) 97:( 87:· 80:· 73:· 66:· 39:.

Index


verification
improve this article
adding citations to reliable sources
"Apache Ant"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message

Original author(s)
James Duncan Davidson
Developer(s)
Apache Software Foundation
Stable release
Repository
Ant Repository
Java
Platform
Java SE
Type
Build tool
License
Apache License 2.0
ant.apache.org
Edit this on Wikidata
automating software build
Apache Tomcat

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.