I just announced the new Spring 5 modules in REST With Spring:

>> CHECK OUT THE COURSE


I’ve been running the yearly “State of Java” survey for the last couple of weeks. It’s the 5th year of the survey and naturally the largest one yet, with 5160 developers taking the time to go through and answer.

Let’s jump right into the data.

1. Java Adoption

Not surprisingly, Java 8 is still used in production by the majority of the development community:

The adoption of Java 9 and 10 is still quite low, sitting at less than 5%.

For reference, in 2017, the numbers for Java 7 and earlier were about 24.4% and they’re now 10.6% – so the ecosystem is clearly upgrading, mostly to Java 8.

2. Spring Adoption

Let’s now have a look at the Spring numbers:

Here, the move to Spring 5 is clear, with 24% of Spring-backed systems running on the latest version in production, up from a very early 2.2% last year.

And, of course, this year we also have clear Java EE numbers, since – believe it or not – not everyone is using Spring 🙂

3. Spring Boot Adoption

Out of the systems that are built with Spring, almost all of them are also using Boot in production:

What’s surprising here is just how quickly Spring Boot 2 is getting adopted, considering the GA came out not even 2 months ago and it’s already sitting at a whopping 30% adoption.

The “Boot 1.4 and older” fell from 30% a year ago, to 6.8% now, which means that the Boot crowd moves and upgrades a lot quicker than the broader ecosystem.

Finally, last year, about 30.2% of Spring-based applications were just using the core framework, but not Boot; now, that number is only 16.7%. Simply put, most Spring applications are now using Boot. 

4. Build Tools Adoption

Maven isn’t going anywhere. The tool was sitting at a comfortable 75.7% last year, and it commands 74.2% of the market now:

As for Gradle, it clawed a bit more of the market, mostly from Ant, and now has just shy of 1/5 of the market – 21.3%.

5. IDE Adoption

The IDE numbers are always interesting, and this year is no different:

IntelliJ grew from 45.8% in 2017 to whopping 55.4% today, clearly winning the IDE battle in the Java space this year.

NetBeans, to the dismay of a few very vocal supporters, fell to 5.1% this year, which is less than half of the 12.4% numbers of 2017.

And Eclipse looks to have somewhat stopped the bleeding and fell just 2% over the course of this year, to 38% of the market.

What’s interesting here is that most of the market share gained by IntelliJ is, surprisingly, from NetBeans and not Eclipse.

6. Web/Application Server Adoption

Here’s what the server landscape looks like today:

This is actually a new question in the survey, so there are no 2017 numbers to compare the data to, but the conclusion is clear and not at all surprising.

Simply put, Tomcat owns the market, with more adoption than everyone else combined, with 62.5%.

The other servers look to be used by about 5% of the market, in a relatively even split.

7. Other JVM Languages

On to the last stretch here – what other JVM-based languages are in use out there?

First, 62.8% of projects are single-language, Java-only.

Here’s what the ecosystem looks like:

Here’s a look just at the forward-looking projects that do use other languages:

The primary takeaway here is, of course, Kotlin – which had a crazy year, jumping from 11.4 in 2017 to 28.8% today.

Scala’s also interesting to look at, going from 28.4% to 21.6% in the course of this year.

8. Conclusion

This look at the Java ecosystem in 2018 has certainly been interesting, confirming some trends that were already well-known and bringing some new ones to light.

Spring Boot is now part of most Spring projects, which is not surprising anymore, but still a huge accomplishment, given the relatively short timeline of the project.

On the IDE front, IntelliJ is still growing at a strong pace. And, very much connected, Kotlin is perhaps the biggest “winner” this year, completely changing the landscape of JVM languages out there.

Overall, a very cool look at the Java community, and a big thanks to everyone who participated.

I just announced the new Spring 5 modules in REST With Spring:

>> CHECK OUT THE LESSONS

newest oldest most voted
bartoszjd
Guest

I think we all knew that Spring Boot owns the market- it is the rapid move to Kotlin that is so surprising! It seems that suddenly in 2017 mostly everyone started to take Kotlin seriously. I suspect that Kotlin may modernize JVM development as much if not more as the new rapid release train of Java. Thanks for conducting that survey!

Marco
Guest
Marco

This ratio between Maven and Gradle seems off to me. It’s is probably skewed by the profile of the visitors.
Thanks for the effort, I appreciate the insights. Will you post the raw data over GitHub?

Me
Admin
Me

Hey Marco,
Yeah, there’s always a small possibility that there’s some bias related to the audience of the survey, on the Spring side of things. But, on the build-tool side – I don’t see why there would be any bias, because the site doesn’t really talk about one more than the other.
And, with 5000+ answers, I think the statistical significance should be relatively high.
Hope that makes sense.
Cheers,
Eugen.

Serban
Guest
Serban

If anything the bias is toward more maven. Baeldung blog I’d assume is read by more “passionate’ java devs. These would be also the ones trying alternate build tools. The reality of actual java programmers that only see java as “work” and don’t bother checking out java blogs probably do more maintenance and don’t have the interest to look to anything else.

Michael R
Guest
Michael R

I’m continually surprised to see such a small uptick in Gradle. I switched years ago and never looked back.

I wonder if this because most devs don’t see the value in comparing alternative build tools or if many have done the comparison and still prefer Maven.

Mark
Guest
Mark

Older devs tend to be more open to improvements. I have always thought it good practice to understand several build systems as I never know what my next project will be based on. As stated earlier many devs are working on maintenance projects and probably forced to working in Maven however we should movements with many newer projects, in my case I find Spring boot 2 works so much better with Gradle and in IntelliJ artifacts are handled so much faster than with Maven.

Phea Soy
Guest
Phea Soy

How about comparison between java web frameworks? Such as Spring,Jersey,Play?

Me
Admin
Me

Well, based on the data, most other frameworks have a relatively low market-share, so they’re all in the “Other” section.

Phea Soy
Guest
Phea Soy

Thanks, I am very happy that can participate with your survey.

Eugene
Guest
Eugene

A very nice report, Thank you!
I’m curious why there’s no Android Studio in your IDE usage section. Did you have it? Or was it merged with some other group?
Thanks!

Me
Admin
Me

That’s an interesting question – it should be included in the “Others” section.
I’m glad you like the report.
Cheers,
Eugen.

Alexander
Guest
Alexander

are you sure it’s not in the “Intellij” Section? It’s technically and Intellij extension

Me
Admin
Me

Hey Alex.
Maybe, yes. But even though it’s based on IntelliJ, I think it’s different enough to also be OK in the “Others” section.

Zachary Klein
Guest
Zachary Klein

Odd that this didn’t get a mention in the article, but the numbers for Apache Groovy are surprisingly strong – even on the “forward-looking” metric Groovy is solidly ahead of Kotlin et al. I think Kotlin is cool and it’s great to see the trend line so positive for the language, but I think Groovy deserves a bit of credit t00. 😉

Me
Admin
Me

Well, yes. But the Goovy numbers from last year were almost the same – 39.8%, so 42.8% this year is pretty much the same. Strong, yes, but no real change.

Zachary Klein
Guest
Zachary Klein

Wow, I didn’t know that. Considering the massive marketing advantage of Kotlin (vs almost no marketing/advocacy for Groovy) I think a 2% growth is no mean feat. 🙂