To blog |

Java version and vendor data analyzed: 2017 edition

May 3, 2017 by Nikita Salnikov-Tarnovski Filed under: Java

2017 is the fifth year when we publish statistics about the Java landscape. Every year, during springtime, we dig into the data that we have gathered from the JVMs Plumbr Agents have monitored, and find out about:

  • which Java versions are used (is Java 6 vs Java 7 vs Java 8)
  • which JVMs are used (Oracle Hotspot vs OpenJDK vs Rest Of The World);
  • how the landscape has changed over time.

This year our conclusions are based on 1,400 different JVMs that Plumbr monitored for performance during March and April 2017. The data has been gathered from within the JVM via System.getProperty() calls with os.arch, os.version, java.version etc..

Java versions used in 2017

This is now finally the year where Java 8 became the most popular environment. Having lost last year by just a fraction of a percent, Java 8 this year had double the number of deployments than Java 7:

java 6 vs java 7 vs java 8

Notable are also the missing elements. Java 5 is gone for good and there was exactly zero early access Java 9 builds among the deployments we received data from. With the recent turmoil around its core Jigsaw module, it might be reasonable to wait until the dust has settled before jumping onto this bandwagon.

Java versions used 2013 – 2017

The picture looks more interesting if we look at the trends over the four years. Presenting the same data over the five-year period starting from 2013. As we have concluded this study now over five years using the same methodology, we see the following trends:

java version usage over time

Number of Java 6 deployments keeps shrinking 2x each year for the fifth year in a row. Considering that Java 6 was EOL’d already in March 2013, it is definitely a good news. Java 7 usage peaked at 2014 and is also in clear decline, leaving Java 8 as the clear winner.

JVM vendors in 2017

Next analysis opens up the data we have about different JVM vendors. If you recall, Java declares a standard any vendor can decide to implement when building a Java Virtual Machine. In theory we should thus see a large variety of different JVM vendors, but in practice we have the following:

java vendors in 2017

No matter how you would interpret the data, the conclusion is the same: there are two JVMs with large deployment base: Hotspot and OpenJDK.

The “Other” category consisted of five different JVMs vendors, each represented by five or less JVMs in the dataset. These vendors included Oracle JRockit, IBM J9, SAP Java Server VM, Zing and SAP VM.

If you found the data interesting, you are likely to enjoy our next week post about Java EE container statistics as well. To be notified on time, subscribe either to our Twitter or RSS feed.