incubator-easyant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Purkayastha, Siddhartha" <>
Subject RE: EasyAnt Build
Date Wed, 23 Mar 2011 12:33:16 GMT
IMHO, it is okay to have documentation that we are shipping to be less likely to change between
the time of two releases. For example, architecture, design, tutorials, reference documentation
etc. But, may be for development tips, how to build (bootstrap using easyant or simply ant),
any pointers of setting up IDE or other dev help / notes, a wiki may be better. Only my thoughts,
though I do not feel very strongly about this.
Please see comments inline in bold.


From: Jean-Louis Boudart []
Sent: Wed 3/23/2011 3:17 AM
Subject: Re: EasyAnt Build

2011/3/22 Purkayastha, Siddhartha <>

> Hi All -
> I was looking at EasyAnt after a long time today.
> While we are discussing infrastructural and legal issues, I thought of
> bringing up a few technical points / questions:
> 1. Is there a place which we can develop as developer's guide? I guess it
> may be very helpful for interested developers to work on EasyAnt. To start
> with: documenting the set up and build process, a design description - which
> we could gradually develop over time? Is there something like that already I
> dont know of ..  :-). I think a wiki was mentioned in some previous
> discussion. Can we try to make it a repository of developer resources?
I would prefer to be shipped in our documentation. People downloading our
sources would have every helpful informations offline to develop in
easyant-core itself or how to write / submit plugins.

> 2. The EasyAnt build on head now seems to have a problem. I am not sure if
> I have the ant dependencies on my setup correct, so did not try to make any
> fix., line 166 is using an @Override annotation whereas the
> method is not a superclass inheritance. This is causing the build to fail. I
> tried running ant clean dist and easyant with a preexisting ant 1.8.2
> install.
I didn't get this error. It looks like @Override is not needed here.
Siddhartha: It was probably happening because I was using 1.5 JDK. The problem doesnt happen
with 1.6. Still it may be a good idea to remove this.

> 3. I tried to bootstrap the build of the current version on HEAD using
> EasyAnt 0.8 but, that did not work.I am wondering given that EasyAnt is
> dependent on Ant, is it really worthwhile to build easyant using itself?
> Even if we are using EasyAnt, internally it is still Ant. The EasyAnt build
> itself will be much easier to understand then.

There are two options  to bootstrap easyant distribution :
 * using deploy target our build.xml for bootstraping target/dist (it
basically compile easyant-core and invokes EasyAntMain under the hood)
 * using another easyant distribution

Being able to build easyant using itsellf allow us to reuse existing

Even if we use ant under the hood of easyant it's not possible (yet) to use
easyant plugins outside of easyant as we extends some classes of ant core
(Main, ProjectHelper) to support phases. Note that our plugins also uses
easyant tasks (<ea:parameter> for example).

I must admit that it's a bit complex, but this would probably refactored
when we will have a public repository for plugins as we will refactor our
build  and distribution.

Siddhartha: Makes sense.

> 4. Currently, after running the EasyAnt build, I see three directories
> being created inside target: dist, distribution, and distributions. Other
> than dist, the other two directories are empty. Should we be retaining all
> three? Are the three meant to serve different purposes?
target/dist = is a local distribution of easyant (used for developpment of
easyant-core itself)
target/distribution and target/distributions seems redundant to me. They are
both used to store easyant distribution archives (zip, tarballs, etc...)
Siddhartha: Should I create a JIRA for this and removing the override annotation?

Jean Louis Boudart
Independent consultant
Project Lead <> 

  • Unnamed multipart/mixed (inline, None, 0 bytes)
View raw message