Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Apache Ant
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Limitations== {{original research|section|date=September 2011}} *Ant build files, which are written in [[XML]], 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. *Many of the older tasks, such as {{tag|javac|open}}, {{tag|exec|open}} and {{tag|java|open}}βuse default values for options that are not consistent with more recent versions of the tasks. Changing those defaults would break existing Ant scripts. *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. <code>${unassigned.property}</code>). *Ant has limited fault handling rules. *[[Lazy evaluation|Lazy property evaluation]] is not supported. For instance, when working within an Antcontrib {{tag|for|open}} 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 loops.) *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 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. There exist third-party Ant extensions (called ''antlibs'') that provide much of the missing functionality. Also, the [[Eclipse (software)|Eclipse]] [[integrated development environment]] (IDE) can build and execute Ant scripts, while the [[NetBeans]] 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.)
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)