[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] debugging aspected code

So I get the idea from this thread that it will be a long time before
there is an Eclipse environment that I can use for real work using
AspectJ1.1.  I am basing that on:

1. Debugger issues will not be resolved until Eclipse 2.2 it sounds like
2. AJDT does not even support 2.1 yet

So I would need to wait until Eclipse 2.2 + how ever long after that
until the AJDT is ported to 2.2.  I am guessing that means many months,
maybe 6+?  Anyways way to far away to worry about.  So sounds like I
better stick to AspectJ1.0 for awhile?

I guess my current question now is:

What configurations are people successfully using to do real world work
with AspectJ, ie, what version of AspectJ, IDE, and AJDT plugin have
people used to do real work (including debugging).

Thanks,

Chris

On Sun, 2003-01-05 at 15:17, Wes Isberg wrote:
> You got me!  I answered Chris' as raising the question of
> AspectJ debuggability for purposes of aspectj-users.  
> I thought others would want to know the current status:
> 
> To debug JSR-45 in eclipse, the eclipse bug is a blocker.  
> To debug AspectJ aspects, our bug is a blocker.
> 
> I keep hoping someone will say "yeah, I can debug JSR-45
> lines great in [IntelliJ|JBuilder|JSwat|NetBeans|...]",
> so even before the eclipse team gets to it in the 2.2 
> release train, there is *some* "mission critical" 
> debugger working with AspectJ code (once fixed!).  
> (We're not tying solutions for debugging AspectJ to 
> eclipse in any way; that's one of the beauties of JSR-45.)
> 
> Does anyone know a "mission critical" JSR-45 debugger?
> 
> Wes
> 
> Mark wrote:
> > 
> > Wes, while i find your explanation very interesting and helpful i do
> > have the
> > impression that we are talking about two different pair of shows here.;-)
> > 
> > Debugging aspectj code *outside* of eclipse (this is what you have
> > elaborated
> > on if i understood you right) is one thing. Using the eclipse IDE to
> > debug code
> > in it's own debugger is a totally different story. (As far as i
> > understood the mail
> > from Chris this is what his mail was about. chris pls correct me if i'm
> > wrong
> > here.) The bug number i posted is about adding jsr-45 support to the
> > *eclipse
> > debugger*. as long as the eclipse debugger doesn't support jsr-45,
> > debugging
> > aspectj code using the eclipse debugger is not supported.
> > 
> > For experimental usage of aspectj code i don't see a problem working
> > with a basic
> > comand-line set of tool. For using aspects in a mission critical
> > environment (what i
> > would like to do), support of a seamless debug session is a must.
> > otherwise it's a
> > show stopper.
> > 
> > -- mark
> > 
> > Wes Isberg wrote:
> > 
> > >What Mark wrote is true but might be confusing to readers;
> > >because we build on the eclipse compiler, they might think
> > >that the eclipse bug needs to be fixed before .class files
> > >produced by AspectJ support JSR-145, which is not true.
> > >
> > >AFAIK:
> > >
> > >- if the line in question is not in an aspect,
> > >  everything should work as usual in 1.0 and 1.1
> > >  (if not, it's a bug).
> > >
> > >- .class files produced by AspectJ 1.1 do not comply
> > >  with JSR-45, but those produced by 1.0 do.  This is
> > >  currently a known bug/limitation.
> > >
> > >- i.e., if the line in question is in an aspect
> > >  and you are using AspectJ 1.0
> > >  and your VM and your debugger client support JSR-45,
> > >  then you should be able to step into and out of the
> > >  aspect source and set breakpoints there.
> > >
> > >- The eclipse debugger does not support JSR-45, but
> > >  Sun's jdb in J2SE 1.4.1 does (and others might as well).
> > >
> > >- For AspectJ 1.1 to support JSR-45 means fixing the
> > >  weaver and BCEL.  I am not sure if this is required
> > >  before 1.1 goes final (though I'd like it to be).
> > >
> > >Wes
> > >
> > >For those less in the know, here's some more detail
> > >and background:
> > >
> > >AspectJ 1.0 supported JSR-45, but AspectJ 1.1 support
> > >still needs to be developed, last I heard.  (BCEL needs to
> > >be upgraded to pass the information through.)  I believe
> > >that
> > >ordinary line number information is still available, but I
> > >haven't checked.
> > >
> > >There are two ways to associate line numbers in .class
> > >files,
> > >the old way and JSR-145 (which supports having many source
> > >files
> > >for a class (etc.).  Running an application on a VM that
> > >supports JSR-45 (like Sun's 1.4.1) makes both forms
> > >available
> > >to a debugger client of the VM debugging API's (JPDA).
> > >Those
> > >clients that use the high-level API's strictly should work
> > >w/o
> > >upgrade with the JSR-145-supplied lines, because they don't
> > >change the debugger interface.  However, many debuggers make
> > >assumptions that violate the API (e.g., the relative
> > >location
> > >of types, etc.).  The eclipse bug suggests that the Eclipse
> > >debugger is one of these or that it uses lower-level API's.
> > >In J2SE 1.4.1, Sun's jdb works to step through aspects.
> > >
> > >Mark wrote:
> > >
> > >
> > >>chris,
> > >>
> > >>pls look at http://bugs.eclipse.org/bugs/show_bug.cgi?id=25798 which
> > >>describes the
> > >>current situation. you can also search the eclipse.technology.ajdt
> > >>newsgroup
> > >>(look for 'jsr 145').
> > >>
> > >>the problem is, that *eclipse* must support jsr 145 in order to allow
> > >>you to debug code
> > >>that has aspect stuff weaved into.
> > >>
> > >>-- mark
> > >>
> > >>Chris Nelson wrote:
> > >>
> > >>
> > >>
> > >>>I've just begun my first forays into AspectJ and like others, am amazed
> > >>>and impressed.  But before I could really be able to work with it for
> > >>>real world stuff, I need to get debugging working and am not having any
> > >>>luck thus far.  I am using AspectJ 1.1.b2 and using the iajc ant task to
> > >>>do builds.  When I then attempt to debug code that has been touched by
> > >>>an aspect, my debugger (Eclipse 2.1) complains about not finding line
> > >>>numbers, even tho I have tried passing both debug=true and
> > >>>debuglevel="lines,vars,source" as attributes of the iajc task.  I don't
> > >>>know if this is a problem specific to Eclipse or just a known issue with
> > >>>the 1.1 beta, but I would appreciate any help.  Any info on how other
> > >>>people are debugging Aspects (please include AspectJ version, IDE, JDK
> > >>>version, and so forth) would also be greatly appreciated.  I don't think
> > >>>I'm doing using any features new to 1.1 so I could downgrade AspectJ if
> > >>>I need to.   But all in all, the promise of aspects just has me
> > >>>drooling.  Awesome job, AspectJ team!
> > >>>
> > >>>Thanks in advance,
> > >>>
> > >>>Chris Nelson
> > >>>
> > >>>
> > >>>
> > >>>_______________________________________________
> > >>>aspectj-users mailing list
> > >>>aspectj-users@xxxxxxxxxxx
> > >>>http://dev.eclipse.org/mailman/listinfo/aspectj-users
> > >>>
> > >>>
> > >>>
> > >>>
> > >>>
> > >>>
> > >>_______________________________________________
> > >>aspectj-users mailing list
> > >>aspectj-users@xxxxxxxxxxx
> > >>http://dev.eclipse.org/mailman/listinfo/aspectj-users
> > >>
> > >>
> > >_______________________________________________
> > >aspectj-users mailing list
> > >aspectj-users@xxxxxxxxxxx
> > >http://dev.eclipse.org/mailman/listinfo/aspectj-users
> > >
> > >
> > >
> > >
> > 
> > _______________________________________________
> > aspectj-users mailing list
> > aspectj-users@xxxxxxxxxxx
> > http://dev.eclipse.org/mailman/listinfo/aspectj-users
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> http://dev.eclipse.org/mailman/listinfo/aspectj-users
>