|
- <?xml version="1.0"?>
- <!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
- <document>
-
- <properties>
- <author email="">Conor MacNeill</author>
- <author email="stefan.bodewig@freenet.de">Stefan Bodewig</author>
- <title>Welcome</title>
- </properties>
-
- <body>
- <section name="Ant 1.8.0">
- <h3>February 5, 2010 - Ant 1.8.0 Available</h3>
- <p>
- Apache Ant 1.8.0 is now available for
- <a href="http://ant.apache.org/bindownload.cgi">download</a>
- .
- </p>
- <ul>
- <li>Lexically scoped local properties, i.e. properties that are only
- defined inside a target,
- sequential block or similar environment.</li>
- <li><import> can now import from any file- or URL-providing resource -
- this includes <javaresource>.</li>
- <li>Various improvements to the directory scanning code that help
- with symbolic link cycles (as can be found on MacOS X Java
- installations for example) and improve scanning performance.
- For big directory trees the improvement is
- <a href="http://mail-archives.apache.org/mod_mbox/ant-dev/200809.mbox/%3Cy1u4p48li29.fsf@v30161.1blu.de%3E">dramatic</a>.</li>
- <li>The way developers can extend Ant's property expansion algorithm has been rewritten
- (breaking the older API) to be easier to use and be more powerful.
- </li>
- <li>a new top level element extension-point allows build files to be
- extended with custom targets more easily</li>
- <li>At the same time the if and unless attributes have been rewritten to do the expected
- thing if applied to a property expansion (i.e. if="${foo}" will mean "yes, do it"
- if ${foo} expands to true, in Ant 1.7.1 it would mean "no" unless a property named
- "true" existed). This adds "testing conditions" as a new use-case to property
- expansion.</li>
- <li>Ant now requires Java 1.4 or later</li>
- <li>new task include provides an alternative to <import> that
- should be preferred when you don't want to override any targets</li>
- <li>numerous bug fixes and improvements as documented in Bugzilla
- and in WHATSNEW</li>
- </ul>
- </section>
- <section name="Ivy 2.1.0">
- <h3>October 8, 2009 - Apache Ivy 2.1.0 Released</h3>
- <p>Apache Ivy 2.1.0 is now available for download as source or binary (with and without
- dependencies) from
- <a href="http://ant.apache.org/ivy/download.cgi">http://ant.apache.org/ivy/download.cgi</a>.</p>
-
- <p>Key features of the 2.1.0 release are</p>
- <ul>
- <li>enhanced Maven2 compatibility, with several bug fixes and
- more pom features covered</li>
- <li>new options for the Ivy Ant tasks and commandline</li>
- <li>configuration intersections and configuration groups</li>
- <li>numerous bug fixes and improvements as documented in Jira
- and in the release notes</li>
- </ul>
-
- <p>For more information see
- the <a href="http://ant.apache.org/ivy/">Ivy home page</a>.</p>
- </section>
-
-
- <section name="AntUnit 1.1">
- <h3>September 26, 2008 - Apache AntUnit 1.1 Released</h3>
-
- <p>Apache AntUnit 1.1 Beta is now available for download as <a
- href="http://ant.apache.org/antlibs/bindownload.cgi">binary</a>
- or <a
- href="http://ant.apache.org/antlibs/srcdownload.cgi">source</a>
- release.</p>
-
- <p>In addition to a few bugfixes and some new assertions AntUnit
- 1.1 allows test listeners to receive the log output of the
- project under test. Both plainlistener and xmllistener have
- an option that makes them echo the project's output into their
- respective logs.</p>
-
- <p>For more information see the <a href="antlibs/antunit/">Antlib's
- home page</a></p>
- </section>
-
- <section name="Apache Ivy is an Ant Sub-Project Now!">
- <h3>October 11, 2007 - Apache Ivy is an Ant Sub-Project Now!</h3>
-
- <p>Apache Ivy, "A Java based tool for tracking, resolving and
- managing project dependencies.", just finished <a
- href="http://incubator.apache.org/">Incubation</a> and has joined
- the Ant project. More information will be available from the Ant
- site soon.</p>
-
- <p>Until we've finished the migration, you can learn more about
- Ivy from its <a href="http://incubator.apache.org/ivy/">Incubator
- website</a>.</p>
- </section>
-
-
- <section name="Apache Ant">
-
- <p>
- Apache Ant is a Java-based build tool. In theory, it is kind of like
- Make, but without Make's wrinkles.
- </p>
-
- <p>
- Why another build tool when there is already <em>make</em>, <em>gnumake</em>,
- <em>nmake</em>, <em>jam</em>, 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.
- </p>
-
- <p>
- 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.
- </p>
-
- <p>
- 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.
- </p>
-
- <p>
- Granted, this removes some of the expressive power that is inherent by being
- able to construct a shell command such as
- <code>`find . -name foo -exec rm {}`</code>, 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
- <code><exec></code> task that
- allows different commands to be executed based on the OS that it is executing
- on.
- </p>
-
- </section>
-
- <section name="Documentation">
-
- <p>
- You can view the documentation for the current release (Apache Ant 1.8.0)
- <a href="manual/index.html">online</a>
- </p>
-
- <p>
- Comprehensive documentation is included in the source and binary distributions.
- </p>
-
- </section>
-
- <!--section name="Nightly Builds">
- <p>
- If you wish to use the latest Ant features, you can try downloading a nightly
- build from <a href="http://brutus.apache.org/~nightlybuild/builds/ant/">here</a>
- </p>
-
- </section-->
-
- <section name="Get Involved">
- <ul>
- <li><a href="http://jakarta.apache.org/getinvolved/getinvolvedindex.html">Get Involved</a></li>
- <li><a href="mail.html">Join Mailing Lists</a></li>
- <li><a href="http://marc.theaimsgroup.com/?l=ant-dev&r=1&w=2">Search the Dev Mailing List</a>
- </li>
- <li><a href="http://marc.theaimsgroup.com/?l=ant-user&r=1&w=2">Search the User Mailing List</a>
- </li>
- </ul>
-
-
-
- </section>
-
- </body>
- </document>
|