|
|
|
@@ -1,124 +0,0 @@ |
|
|
|
<html> |
|
|
|
<head> |
|
|
|
<title>Welcome to Ant1.5</title> |
|
|
|
</head> |
|
|
|
<body bgcolor="#ffffff"> |
|
|
|
<h1>Welcome to Ant1.5</h1> |
|
|
|
Hello, and welcome to Ant1.5 |
|
|
|
<p> |
|
|
|
For new users to Ant, welcome to a new way to build your software. |
|
|
|
<p> |
|
|
|
For veteran Ant users, its been, what nine months since Ant 1.4.1 |
|
|
|
shipped, and we've been as busy enhancing it as you've been using it. |
|
|
|
<p> |
|
|
|
|
|
|
|
We know you've been using Ant, not just from the all the bug reports we |
|
|
|
see, but from the awards we've been getting from JavaWorld and SD Magazine |
|
|
|
and from the fact that it is now clearly a mainstream product. Every quality IDE, |
|
|
|
from the Open Source projects: Emacs, NetBeans, Eclipse, JEdit, to the |
|
|
|
commercial offerings such as IntelliJ IDEA and JBuilder now have high |
|
|
|
quality Ant integration either built in or available as a |
|
|
|
download. And they do that not just because it improves their products, |
|
|
|
giving users the best of both worlds -great editors and a great build |
|
|
|
process, but because Java developers are starting to expect Ant (and |
|
|
|
JUnit) everywhere. |
|
|
|
<p> |
|
|
|
Even in mid-2001, if you said you were using Ant in your project, people |
|
|
|
would stare at you. Now, as long as you are talking with Java developers |
|
|
|
and not management or your family and friends, people will nod, shrug |
|
|
|
and maybe ask you questions about build file and Ant configurations. The good |
|
|
|
news: Ant 1.5 includes more helpful error messages and a new |
|
|
|
<tt>-diagnostics</tt> command to look at your Ant installation and help work out why |
|
|
|
things arent working. |
|
|
|
<p> |
|
|
|
Now, when you tell people you work on Ant in your spare time, |
|
|
|
people used to give you very funny stares; now they ask you about how to |
|
|
|
set up automated build processes, or deploy to some random app server. |
|
|
|
The good news: Ant 1.5 makes it easier to answer those questions. |
|
|
|
|
|
|
|
The other sign of mainstream is that there are also books on the |
|
|
|
subject, first Java Tools for Extreme Programming, then Ant: The |
|
|
|
Definitive Guide, and the first Ant1.5 book, Java Development with Ant, |
|
|
|
due to ship at the end of the month. (Steve says: I prefer the one with |
|
|
|
my name on the cover as co-author, but I'm biased). |
|
|
|
As usual, the manual has improved too: |
|
|
|
regardless of whether you need a book to work with Ant or not, you need |
|
|
|
that on-line documentation. And as usual, any extra contributions to the |
|
|
|
docs are welcome indeed. |
|
|
|
<p> |
|
|
|
Ant has also influenced how projects are built. Now when you download |
|
|
|
any open source project, or work with a closed source team, you expect |
|
|
|
to see a file called build.xml there. Equally important, you expect that |
|
|
|
build file to compile and run a set of tests using JUnit or a derivative |
|
|
|
thereof; if they are missing, you worry. |
|
|
|
<p> |
|
|
|
Together, Ant and JUnit have transformed the mainstream process for |
|
|
|
building and deploying Java projects. And that's pretty profound, when |
|
|
|
you think about it. What is equally impressive is that this was all done |
|
|
|
as a co-operative effort. Nobody works on Ant full-time; everybody uses |
|
|
|
it to solve their problems, to address their build crises and generally |
|
|
|
get something done in a hurry. It just so happens that the architectural |
|
|
|
model of Java classes bound via introspection to the XML build file |
|
|
|
makes it easy for people to add new tasks, extend existing ones and |
|
|
|
generally ease their way into developing and extending Ant. It is the |
|
|
|
users that have helped Ant become the success it is today, and will keep |
|
|
|
it that way tomorrow. |
|
|
|
<p> |
|
|
|
<h2>What has changed</h2> |
|
|
|
<p> |
|
|
|
So, what is new in Ant1.5? Lots of stuff. You will have to look at the |
|
|
|
<a href="WHATSNEW">whatsnew</a> file to see, but basically the changes |
|
|
|
fall into a number of categories |
|
|
|
<ol> |
|
|
|
<li>Bug fixes. We know, some things were broken in 1.4. In ant1.5 we |
|
|
|
have moved the bugs, fixing the ones we could, and no doubt adding |
|
|
|
different ones. Hopefully the total bug count has decreased. |
|
|
|
<li>Scalability. Changes in <ant> and a few other tasks should |
|
|
|
make it easier to write large, scalable build files. |
|
|
|
<li>Deployment. Take a look at the new <serverdeploy> task, add support |
|
|
|
for your server if it isnt there. Tomcat 4.1 has its own deployment |
|
|
|
tasks incidentally -fetch them from the tomcat pages. |
|
|
|
<li>Ease of use. We have added new attributes to make the archive tasks |
|
|
|
consistent with each other, new error messages for common problems (you |
|
|
|
get a screenful of help when a task wont instantiate, for example), and |
|
|
|
generally try and be helpful. As usual, we will accept contributions to |
|
|
|
the documentation or the code for even more helpfulness. Hey, in ant1.5 |
|
|
|
you dont need to double escape the $ sign to preserve it in a string! |
|
|
|
<li>Java 1.4 support. We build and test fine on Java 1.4, and have the |
|
|
|
extensions to javac needed to build code with assertions in. We should |
|
|
|
point out that we have more work to do in this area: if someone wants to |
|
|
|
write an <assertionset> datatype to give users control of which assertions |
|
|
|
to enable, and patch this in to things like the <junit> and |
|
|
|
<java> tasks, things would get very interesting. |
|
|
|
<li>Continuous builds. Automated build tools are becoming more widely |
|
|
|
used; fork options on <javac> and <javadoc> are there to |
|
|
|
stop memory use growth on a continuous process. |
|
|
|
<li>New platforms: MacOS X for owners of those cute little laptops, |
|
|
|
Novell Netware servers, and even z/OS and OS/390 for mainframe |
|
|
|
developers who write their build files on their virtual card punches. |
|
|
|
<li>Conditions. Take a look at the <condition> tag to see what you can |
|
|
|
look for, then at <waitfor> to use the same tests in deployment. |
|
|
|
Finally, notice the <tt>if</tt> and <tt>unless</tt> attributes on |
|
|
|
<fail> for easy halting of the build on a condition, without |
|
|
|
having to resort to conditional targets. |
|
|
|
</ol> |
|
|
|
|
|
|
|
There are many more enhancements, so we hope you will find your build |
|
|
|
projects easier. We have, as usual, jumped through hoops to keep |
|
|
|
existing builds working, even those build files that went out their way |
|
|
|
to not work on Java 1.4 (hint: dont ask for the classic compiler, it has |
|
|
|
gone away). If your build file stops working, and it isnt something listed |
|
|
|
on the 'changes that may break your build' part of the WHATSNEW file, or |
|
|
|
something we know about on bugzilla, please dont hesitate to file a new |
|
|
|
bug report, preferably one with a replicable test and a patch to fix the |
|
|
|
problem. |
|
|
|
<p> |
|
|
|
Thanks, |
|
|
|
<p> |
|
|
|
The Ant development team. |
|
|
|
<p> |
|
|
|
PS: many thanks for Magesh to being the build manager for this release! |
|
|
|
He has been busy since Feb/March organizing it. Magesh -you are so good |
|
|
|
at this you should do it next time too :) |
|
|
|
</body></html> |
|
|
|
|