> 
> In general, when a plugin depends on a library already provided by
> core, I have seen three approaches in the short term:
> 
> 1. Exclude the library on the plugin side (e.g. how Token Macro excludes ASM)
> 2. Mask the library's classes (e.g. how JaCoCo masks ASM classes)
> 3. Shade the library into the plugin
> 
> […]
> For this reason, I recommend that all plugins that use Guava or ASM
> follow one of the three approaches outlined above in the short term.
> This is the only guaranteed way for plugins to avoid Guava and ASM
> problems at present.

Thanks for clarifying these options! 

Wouldn’t it be helpful if we would also suggest which option we prefer? 
Otherwise every plugin author needs to rethink the same options again and 
again. 

E.g., option 1 did break all my integration tests with the token macro plugin 
since it does not bundle ASM anymore. 


 
 

-- 
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 jenkinsci-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-dev/3F15ED4D-5175-4713-8DE7-6B5E974F2C5D%40gmail.com.

Reply via email to