diff --git a/docs/index.html b/docs/index.html index 8debd95ad..22813c756 100644 --- a/docs/index.html +++ b/docs/index.html @@ -272,59 +272,33 @@
For more information see the Antlib's home page
Apache Ivy, "A Java based tool for tracking, resolving and - managing project dependencies.", just finished Incubation and has joined - the Ant project. More information will be available from the Ant - site soon.
-Until we've finished the migration, you can learn more about - Ivy from its Incubator - website.
--Apache Ant is a Java-based build tool. In theory, it is kind of like -Make, but without Make's wrinkles. -
+ Ant is a Java library and command-line tool. + Ant's mission is to drive processes described in build files as targets + and extension points dependent upon each other. + The main known usage of Ant is the build of Java applications. + Ant supplies a number of built-in tasks allowing to compile, assemble, + test and run Java applications. + Ant can also be used effectively to build non Java applications, for + instance C or C++ applications. More generally, Ant can be used to + pilot any type of process which can be described in terms of targets + and tasks. +-Why another build tool when there is already make, gnumake, -nmake, jam, and -others? Because all those tools have limitations that Ant's original author -couldn't live with when developing software across multiple platforms. Make-like -tools are inherently shell-based -- they evaluate a set of dependencies, then -execute commands not unlike what you would issue in a shell. This means that you -can easily extend these tools by using or writing any program for the OS that -you are working on. However, this also means that you limit yourself to the OS, -or at least the OS type such as Unix, that you are working on. -
+ Ant is written in Java. Users of Ant can develop their own + "antlibs" containing Ant tasks and types, and are offered + a large number of ready-made commercial or open-source "antlibs". +-Makefiles are inherently evil as well. Anybody who has worked on them for any -time has run into the dreaded tab problem. "Is my command not executing -because I have a space in front of my tab!!!" said the original author of -Ant way too many times. Tools like Jam took care of this to a great degree, but -still have yet another format to use and remember. -
--Ant is different. Instead of a model where it is extended with shell-based -commands, Ant is extended using Java classes. Instead of writing shell commands, -the configuration files are XML-based, calling out a target tree where various -tasks get executed. Each task is run by an object that implements a particular -Task interface. -
+ Ant is extremely flexible and does not impose coding conventions or + directory layouts to the Java projects which adopt it as a build tool. +
-Granted, this removes some of the expressive power that is inherent by being
-able to construct a shell command such as
-`find . -name foo -exec rm {}`
, but it
-gives you the ability to be cross platform -- to work anywhere and everywhere.
-And hey, if you really need to execute a shell command, Ant has an
-<exec>
task that
-allows different commands to be executed based on the OS that it is executing
-on.
+ Software development projects looking for a solution combining build tool and
+ dependency management can use Ant in combination with Ivy.
Apache Ivy, "A Java based tool for tracking, resolving and - managing project dependencies.", just finished Incubation and has joined - the Ant project. More information will be available from the Ant - site soon.
- -Until we've finished the migration, you can learn more about - Ivy from its Incubator - website.
--Apache Ant is a Java-based build tool. In theory, it is kind of like -Make, but without Make's wrinkles. -
- --Why another build tool when there is already make, gnumake, -nmake, jam, and -others? Because all those tools have limitations that Ant's original author -couldn't live with when developing software across multiple platforms. Make-like -tools are inherently shell-based -- they evaluate a set of dependencies, then -execute commands not unlike what you would issue in a shell. This means that you -can easily extend these tools by using or writing any program for the OS that -you are working on. However, this also means that you limit yourself to the OS, -or at least the OS type such as Unix, that you are working on. -
- --Makefiles are inherently evil as well. Anybody who has worked on them for any -time has run into the dreaded tab problem. "Is my command not executing -because I have a space in front of my tab!!!" said the original author of -Ant way too many times. Tools like Jam took care of this to a great degree, but -still have yet another format to use and remember. +
+ Ant is a Java library and command-line tool. + Ant's mission is to drive processes described in build files as targets + and extension points dependent upon each other. + The main known usage of Ant is the build of Java applications. + Ant supplies a number of built-in tasks allowing to compile, assemble, + test and run Java applications. + Ant can also be used effectively to build non Java applications, for + instance C or C++ applications. More generally, Ant can be used to + pilot any type of process which can be described in terms of targets + and tasks. +
++ Ant is written in Java. Users of Ant can develop their own + "antlibs" containing Ant tasks and types, and are offered + a large number of ready-made commercial or open-source "antlibs". +
++ Ant is extremely flexible and does not impose coding conventions or + directory layouts to the Java projects which adopt it as a build tool. +
++ Software development projects looking for a solution combining build tool and + dependency management can use Ant in combination with Ivy.
--Ant is different. Instead of a model where it is extended with shell-based -commands, Ant is extended using Java classes. Instead of writing shell commands, -the configuration files are XML-based, calling out a target tree where various -tasks get executed. Each task is run by an object that implements a particular -Task interface. -
-
-Granted, this removes some of the expressive power that is inherent by being
-able to construct a shell command such as
-`find . -name foo -exec rm {}`
, but it
-gives you the ability to be cross platform -- to work anywhere and everywhere.
-And hey, if you really need to execute a shell command, Ant has an
-<exec>
task that
-allows different commands to be executed based on the OS that it is executing
-on.
-