Thanks for a very descriptive answer, Jesse.

Actually the library XX is our internal library, so it's definitely not 
among the Jenkins core libs.

The problem is that the users of Plugin B recently started to complain that 
they regularly get errors "java.lang.ClassCastException: com.foo.EventImpl 
cannot be cast to com.foo.Event". Library XX contains an interface 
com.foo.Event and an implementing class com.foo.EventImpl. So the error 
means that class and interface were loaded by different classloaders from 
different library versions.

Plugin A and Plugin B do not have dependencies on other plugins. So 
according to what you said I still assume that their libs are isolated from 
each other. And the problem is probably happening because Plugin B contains 
few dependencies that in their turn depend on different library XX 
versions. That seems to be the only possible option.

select plugin-first class loading mode for this plugin (a dangerous option 
> disabled by default). 
>

What's dangerous about it? Possibility to override some Jenkins core libs 
to incompatible ones?

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-dev/d1d55771-ef78-4723-8c11-a12deaa9d5de%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to