Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] Exception in thread "main" java.lang.NoClassDefFoundError

In AspectJ syntax, the expression

pkg.*

means any type in package 'pkg'.  If your type is in pkg.subpkg then
it will not match that expression.  Two dots are needed to include
types in the package or any sub-package.

pkg..*

Going by the aop.xml in your previous email, you are using
org.apache.log4j.*  and that doesn't match
org.apache.log4j.spi.RootLogger, so it is not excluded from the
weaving process.

The doc is here:
http://www.eclipse.org/aspectj/doc/released/devguide/ltw-configuration.html
but i'll say that if you aren't familiar with the double dot notation,
it isn't explicitly indicated there as what you need to use, and the
example on that page is a bit unclear.  we could do with improving
that doc.

cheers,
Andy.

2008/6/30 Buck, Robert <rbuck@xxxxxxxxxxxx>:
> Hello,
>
> I have been grappling with an issue for a couple weeks now. No information
> in the documentation, on the web via google, seems to point me in the right
> direction. I looked through the aspectj database, and nothing there to help
> either.
>
> I put together a simple hello world application to diagnose an issue I see
> when using aspectj in a larger scale application. Here is my question...
>
> Why, when I specifically tell aspectj not to weave log4j, does it try to?
> (assuming the stack trace below hints this, because the standalone
> application works properly).
>
> Or, is there a bug in the aspectj agent that would cause this?
>
> Or, is there a bug in aspectj with respect to static initializer blocks?
>
> Exception in thread "main" java.lang.NoClassDefFoundError
>  at org.apache.log4j.spi.RootLogger.<init>(RootLogger.java:46)
>  at org.apache.log4j.LogManager.<clinit>(LogManager.java:80)
>  at org.apache.log4j.Logger.getLogger(Logger.java:118)
>  at
> com.verisign.common.properties.PropertyManager.<clinit>(PropertyManager.java:47)
>  at com.verisign.jtaps.test.Test.calc(Test.java:19)
>  at com.verisign.jtaps.test.Test.main(Test.java:29)
> Thanks
>
> Bob
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
>


Back to the top