ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Conor MacNeill <>
Subject Re: ejbjar: unable to load dependency analyzer
Date Sun, 21 Jul 2002 10:32:00 GMT
Bridges,Edward wrote:
> indeed, i confirmed that the AncestorAnalyzer class is in fact there:
> c:\>jar tvf c:\ant-1.5\lib\optional.jar
> .
> .
>   3224 Tue Jul 09 11:12:34 EDT 2002 org/apache/tools/ant/util/depend/bcel/AncestorAnalyzer.class
> .
> .
> i tried both the binary distro and compiling it myself, and i tried using all 
> three of dependency="[none|super|full]" as the attributes for the ejbjar task.
> thanks!
> --e--


Let me just explain what is going on and let's see where we go from there.

Firstly, the 1.4.1 behaviour was to add the super classes of all bean 
classes into the generated jar. This was a minimal attempt to ensure that 
dependent classes were included in the jar. This feature was implemented 
using reflection which required the classes to be loaded into Ant's VM. This 
was undesirable for a few reasons especially the need to get the classpaths 

In Ant 1.5, the mechanism was changed to use BCEL. This has two benefits - 
the bean classes are no longer loaded into the Ant VM and a fuller 
dependency analysis was possible. The dependency attribute was introduced to 
give more control over this feature. I think the behaviour of the various 
options are covered in the documentation.

The default value, "super" is there for backward compatability. The contents 
of any jars generated should be the same between 1.4 and 1.5 with this 
option. This option *requires* BCEL.

The version of BCEL required is 5.0. Later versions should work if BCEL 
maintains backward compatibility.

You say you have tried "none". This should always work since it performs no 
dependency analysis at all. You should get no warnings. Is this the case?

If you have the BCEL jar and the other options do not work - i.e. they give 
a warning, can you check the integrity of the BCEL jar (jar tvf bcel.jar 
should do it).


To unsubscribe, e-mail:   <>
For additional commands, e-mail: <>

View raw message