Problem of weaving unkown classes

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Problem of weaving unkown classes

Denis SEMMAU

Hello,

 

I’ve this error message in aspectj :

 

[AppClassLoader@14dad5dc] error can't determine superclass of missing type org.netbeans.lib.profiler.server.ProfilerRuntimeCPUFullInstr

when weaving type com.google.common.base.Absent

when weaving classes

when weaving

 

 

Maybe due to my aspect :

@Before("call(public void Thread+.start()) && target(childThread)")

 

Or :

@After("execution (public void Thread+.run())")

 

However, this error has a large impact on the performances of my application.

Could you tell me how to fix it please ?

 

 

Best regards,

 

Denis

 


_______________________________________________
aspectj-dev mailing list
[hidden email]
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/aspectj-dev
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Problem of weaving unkown classes

Andy Clement
It isn’t clear to me if you will be successful loadtime weaving Thread itself. It might work but it may be loaded too early for the aspects to apply to (in which case, use binary weaving before starting the app). However, for it to work with execution() you need to specify -Xset:weaveJavaPackages=true in your aop.xml file. I presume -showWeaveInfo option will tell you if you are hitting what you expect.

If you are sure you don’t care about the can’t find type message, because it is talking about types you *know* you aren’t interested in then you can turn it off. Something like -Xlint:ignore in the weaver options in aop.xml, or something more fine grained to just turn off cantFindType.

Or you could limit which types are being examined using the <include/exclude within …> clause in the weaver options section or add a within/!within to your pointcut.

Is it the errors being printed that slows down your app or the errors occurring in the first place? If it is the printing, the lint config option will help. If it is the latter, you have to limit what you are weaving (via the within clause). Maybe an exclude clause on com.google.common.base.Absent will help you - but I’m not sure if you are expecting to catch join points in there or not.

cheers,
Andy


On Mar 29, 2016, at 10:29 AM, Denis SEMMAU <[hidden email]> wrote:

Hello, 
 
I’ve this error message in aspectj : 
 
[AppClassLoader@14dad5dc] error can't determine superclass of missing type org.netbeans.lib.profiler.server.ProfilerRuntimeCPUFullInstr
when weaving type com.google.common.base.Absent
when weaving classes
when weaving
 
 
Maybe due to my aspect :
@Before("call(public void Thread+.start()) && target(childThread)")
 
Or :
@After("execution (public void Thread+.run())")
 
However, this error has a large impact on the performances of my application.
Could you tell me how to fix it please ?
 
 
Best regards, 
 
Denis 
 
_______________________________________________
aspectj-dev mailing list
[hidden email]
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/aspectj-dev


_______________________________________________
aspectj-dev mailing list
[hidden email]
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/aspectj-dev
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Problem of weaving unkown classes

Denis SEMMAU

Hello,

OK thank you or your reply ! I(ve the same problem for a lot of packages, not only this one.

I’ll try the parameters in aop.xml !

Thanks a lot !

 

Cheers,

Denis

 

 

De : [hidden email] [mailto:[hidden email]] De la part de Andy Clement
Envoyé : mercredi 30 mars 2016 00:00
À : AspectJ developer discussions
Objet : Re: [aspectj-dev] Problem of weaving unkown classes

 

It isn’t clear to me if you will be successful loadtime weaving Thread itself. It might work but it may be loaded too early for the aspects to apply to (in which case, use binary weaving before starting the app). However, for it to work with execution() you need to specify -Xset:weaveJavaPackages=true in your aop.xml file. I presume -showWeaveInfo option will tell you if you are hitting what you expect.



If you are sure you don’t care about the can’t find type message, because it is talking about types you *know* you aren’t interested in then you can turn it off. Something like -Xlint:ignore in the weaver options in aop.xml, or something more fine grained to just turn off cantFindType.



Or you could limit which types are being examined using the <include/exclude within …> clause in the weaver options section or add a within/!within to your pointcut.



Is it the errors being printed that slows down your app or the errors occurring in the first place? If it is the printing, the lint config option will help. If it is the latter, you have to limit what you are weaving (via the within clause). Maybe an exclude clause on com.google.common.base.Absent will help you - but I’m not sure if you are expecting to catch join points in there or not.

 

cheers,

Andy



 

On Mar 29, 2016, at 10:29 AM, Denis SEMMAU <[hidden email]> wrote:

 

Hello, 

 

I’ve this error message in aspectj : 

 

[AppClassLoader@14dad5dc] error can't determine superclass of missing type org.netbeans.lib.profiler.server.ProfilerRuntimeCPUFullInstr

when weaving type com.google.common.base.Absent

when weaving classes

when weaving

 

 

Maybe due to my aspect :

@Before("call(public void Thread+.start()) && target(childThread)")

 

Or :

@After("execution (public void Thread+.run())")

 

However, this error has a large impact on the performances of my application.

Could you tell me how to fix it please ?

 

 

Best regards, 

 

Denis 

 

_______________________________________________
aspectj-dev mailing list
[hidden email]
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/aspectj-dev

 


_______________________________________________
aspectj-dev mailing list
[hidden email]
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/aspectj-dev
Loading...