On 2017-02-22 03:42, tamal wrote:
I meant to say Jenkins uses Guava 11.x.

On Tuesday, February 21, 2017 at 6:41:25 PM UTC-8, tamal wrote:

    Hi,
    We are writing some custom Jenkins plugin that uses auto generated
    gRPC java client. The issue is Jenkins by default bundles Guava
    15.0. But gRPC client needs 18.0, otherwise we are getting Method
    Not Found exceptions. So, we have modified Jenkins to use Guava
    18.0. But the issue is between 15.0 and 18.0, Guava renamed method
    Iterators.skip() to Iterators.advance(). You can see our commit here:

    
https://github.com/appscode-ci/jenkins/commit/3d67efe7b1020945a71245ffaf94438829775f8e
    
<https://github.com/appscode-ci/jenkins/commit/3d67efe7b1020945a71245ffaf94438829775f8e>

    My question is will it be possible to upgrade Jenkins to use at
    least Guava 18.0 ?

I have struggled with this for a long time and (except for a distaste to google developed libraries i have developed) it was a waste of time. Changing the guava version in core is a challenge as there likely are many plugins that depend on that particular version and updating it would break binary compatibility for those plugins. What worked for me here was instructing maven-hpi-plugin to use pluginFirstClassLoader so your plugin will prefer the version of guava it bundles rather than the one core happens to use. Both shading and class masking had subtle problems.

HTH
--
oliver

--
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/1ae5e6a7-f031-5d72-36ed-8249ea32f68e%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to