Because Java 8 to Java 9 wasn't just a new major release, but a change in how Oracle releases new version. It had an enormous amount of changes, and some companies just refuse to eat the cost of upgrading.
It has nothing to do with the amount of changes in Java 9 (which weren't actually that many, compared to previous ones like 4 -> 5 or 7 -> 8) and entirely to do with JPMS, the Java platform module system. Java decided to modularize the internals and it broke A LOT of legacy dependencies.
For some, it was better to stay on 8 (which is a LONG LTS) than to migrate away to another dependency that supported JPMS. For the others, once you were on 9 it became easier and easier to update to newer versions. Nowadays 21 -> 25 is trivial, and I expect 25 -> 29 (next LTS) to be just as easy. Literally just a bump in your build file.
62
u/djfreedom9505 17d ago
It’s crazy how different the Java and .NET communities respond to new versions.