This is now third year when we publish statistics about the 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:
- Which Java versions are being most commonly used (Java 6 vs Java 7 vs Java 8)
- Which Java EE containers are the most widespread (Tomcat vs Jetty vs … )
- Which JVMs are most frequently used (Oracle Hotspot vs OpenJDK vs Rest Of The World)
This year our conclusions are based on 758 different JVMs that Plumbr monitored during February and March 2015. The data has been gathered from within the JVM via System.getProperty() calls with os.arch, os.version, java.version etc.
Which Java versions are being used most in 2015?
Notably, 2015 was the first year when we saw exactly zero Java 5 instances. The following chart displays the current market share in regards of the Java 6, 7 and 8 versions:
It is nice to see that old is making room for the new – one in five JVMs is already running on Java 8, which is a significant improvement over the last year.
Java version adoption rate over time
It is even more interesting if we look at the trends over time. Aggregating the data over the past three years, we can see the following trends forming:
Java 5 is clearly gone for good and shows no signs of returning from the dead. Java 6 is also being phased out – based on the above we can predict that by 2016 the Java 6 share of the market will be dropped to below 10% of the JVMs out there.
Java 7, while still leading the pack, has peaked and is already giving way to Java 8, so we expect Java 8 to be the most widely used JVM by the time we will analyze the market again in 2016.
Ancient versions are still in use
Considering the fact that Java 7 EOL is in April 2015, every JVM out there still using Java 7 might be considered legacy, but looking in more details to what versions are being used of the Java 7, the picture looks even scarier:
The above chart of about 450 unique JVMs clearly shows that version updates are not being woven into the maintenance processes of many companies. There are still applications out there using Java 7 versions released more than four years ago.
Or, to look at the problem from another perspective – 20% of the JVMs running on Java 7 are using pre 1.7.0_45 versions that are known to contain more than 100 known security bugs, which have been fixed since then. Not to mention performance and stability updates, the security aspect alone should motivate you to update more frequently.
The statistics about the Java EE container popularity and JVM vendors will be published soon.