[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[aspectj-users] AJDT v1.20M1 "feature"

Title: AJDT v1.20M1 "feature"


I probably just missed this in all of the release notes, but I thought this would be worth sharing with the group, I recently upgraded my version of AJDT to 1.2.0 M1, what I ran into was suddenly parts of my application stopped working and I kept getting a "java.lang.NoClassDefFoundError" error and I could not figure out why.  Weirder yet, it only occurred in certain parts of my code.

Well, after a de-compile [still not the clean version in the new aspectj version], I looked at the imports and low and behold the following class appeared:

        import org.aspectj.runtime.internal.CFlowCounter;

I then looked at the aspectrt.jar file that I included in my WEB-INF/lib directory and guess what, this was not there.  I then pulled the new version that is used by AJDT and it was there and magically my code worked.  In looking through my code this is only referenced when you have cflow joinpoints so that what was causing the erratic behavior in my app.  From what I can tell, this new code is used to create ThreadLocal copies of the cflow counters.

I am not sure if this is in the release notes of either aspectj or AJDT, but it would be worth noting that if you have aspectjrt.jar in your lib, you need to update if you are using AJDT 1.2.0M1 and most likely some version of aspectj, I am just not sure which one.