Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] How to run compile time weave with ant? Simple case.




This was a bit confusing for me, and may be for others as well.


I am running <iajc> ant with -v (verbose mode). "info woven" is printed. However "weaveinfo" is not printed. This made me think nothing was being woven.

     [iajc] info woven class com.sun.jbi.messaging.util.WSDLHelper (from C:\workspace\new\EnterpriseManager\gui\esbConsole\lib\jbi\jbi_rt.jar)
     [iajc] info woven class com.sun.jbi.messaging.util.OpenBufferOutputStream (from C:\workspace\new\EnterpriseManager\gui\esbConsole\lib\jbi\jbi_rt.jar)
     [iajc] info woven class com.sun.jbi.messaging.MessageFactory (from C:\workspace\new\EnterpriseManager\gui\esbConsole\lib\jbi\jbi_rt.jar)
     [iajc] info woven class com.sun.jbi.messaging.MessageExchangeProxy (from C:\workspace\new\EnterpriseManager\gui\esbConsole\lib\jbi\jbi_rt.jar)
     [iajc] info woven class com.sun.jbi.messaging.MessageService (from C:\workspace\new\EnterpriseManager\gui\esbConsole\lib\jbi\jbi_rt.jar)
     [iajc] info woven class com.sun.jbi.messaging.NMRStatistics (from C:\workspace\new\EnterpriseManager\gui\esbConsole\lib\jbi\jbi_rt.jar)


I agree with this, i've seen it trip up a few people.  'woven class XXX' means the class went through the weaver, that is all.  It doesn't mean anything got modified, and you will only find out about that if (as you discovered) you turn on showWeaveInfo.



1) I would recommend that "weaveinfo" is printed in ant -verbose mode and
 

2) I might suggest that it is more clear what these arcaic warnings/errors mean

I guess after seeing it for so long, it is not archaic to me, but I take your point.  Raise an enhancement request and we can look at it. 

I still don't know what this means though in LTW


Fri Oct 17 11:15:59 PDT 2008 error can't determine modifiers of missing type com.sun.jbi.framework.ServiceUnitFramework
when processing type mungers com.sun.soabi.capsverifier.AppVerifierLifeCycleListener

It means a type was missing during weaving and could not be found and so we could not determine the modifiers of that type and we needed to know the modifiers because of something you specified in your pointcut.  Missing types during load time weaving is unusual because you are usually setup to run the entire application so it could be that a different class loader is responsible for it and we can't see it from where we are (in the weaver), I haven't looked at your config in detail to determine if this is the case.  I always find compile time weaving or binary weaving much easier to diagnose...

Andy.



Back to the top