What JVM versions are running Jenkins? 2016 Update!

    What follows contains some opinions or statements which may not be seen as purely factual or neutral. Note that this represents by no mean the general position of the Jenkins governance board. This is solely my opinion as a contributor based on the data I gathered, and what I feel from the feedback of the community at large.

    Java 8 now the most used version, and growing

    If we look at the global numbers, Java 8 runtimes now represent 52.8% of the Jenkins instances running, which have not opted out of anonymous usage statistics.

    2016 jvm stats all

    And if you look at the trend, Java 8 is clearly growing fast.

    Zooming into the Jenkins 2.x instances subset

    Now, if you look at that picture, though already interesting and showing a clear trend towards Java 8 runtime adoption, some might argue it’s being too nice to older JREs. The reasoning could be: instances running (very) old Jenkins versions may not be the ones you want to look at when trying to plan the future of an opensource project: those are indeed probably not going to upgrade in general anyway, or when they do, upgrading the JRE would be a small thing compared to the rest to be tested with such a gap.

    So, if we only keep the instances running Jenkins 2.x, then the proportion of Java 8 goes to almost 70% compared to Java 7 (Jenkins 2.x requires Java 7) [1]:

    2016 jvm stats only 2.x

    Conclusion

    Java 8 adoption numbers are getting bigger, while every other JREs are going down.

    If you are still using a JRE 7 to run Jenkins, it is seriously time to think about upgrading to 8. Knowing that it’s definitely not a bleeding-edge path might help you go that way, especially if you generally do not like upgrades. Also, as a reminder, the most used JDK, Oracle JDK 7 now got end-of-lifed more than 18 months ago.

    Contrary to the past attempts the previous years, the discussion on the Jenkins development mailing list did not trigger strong rebutals by many people.

    Perhaps it’s finally time for Mr. Jenkins to upgrade to Java 8!

    All numbers shown below are derived from the new jvms.json file now generated automatically every month, after the two related pull-requests 1 and 2 got merged. [2]

    1. 69% for October, 67% in September
    2. You are more than welcome to review those Pull-Requests and shout if you see something wrong in the calculations.
    About the Author
    Baptiste Mathus
    Baptiste Mathus

    Baptiste has been using and contributing to Jenkins since it was called differently, and is a huge proponent of the Agile, Devops & Continuous Delivery movements. He loves to discuss not only the technical aspects, but also the even more essential cultural aspects of this all, working together to improve the value provided to customers in a great inclusive and blameless environment.