Like for last year’s article about the same subject, yet another recent discussion about finally requiring Java 8 to run future versions Jenkins pushed me to gather some more factual data around it.
|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.|
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.
And if you look at the trend, Java 8 is clearly growing fast.
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) :
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!