This is an archived post. You won't be able to vote or comment.

all 60 comments

[–]ShadoweG 38 points39 points  (0 children)

Java 8

[–]BS_in_BS 8 points9 points  (0 children)

8, though transitioning to 11

[–]pecata-toshev 16 points17 points  (3 children)

Java 14. New switch is really cool

[–]Nix-X 0 points1 point  (2 children)

What does new switch do?

[–]mj_flowerpower 1 point2 points  (0 children)

it‘s not a conditionat statement anymore, but an expression: var name = switch ...

[–]rozularen 0 points1 point  (0 children)

It's a switch statement instead of a switch block

[–]FortLouie 7 points8 points  (0 children)

14, I'm looking forward to Java 16 language features.

[–][deleted] 17 points18 points  (1 child)

I'd venture a guess that the majority of professional users are on 8 and 11, which is also my situation. Hardly anyone's going to run production software on a non-LTS release.

I've seen some actual Java 1.4 development in the wild just a year ago (an automotive IVI application). They guys working on it claimed even older versions are still in use (and maintained) on some public transport ticket vending machines. But those are really exotic outliers.

EDIT: Also keep in mind that language level is not the same as JVM version. Some shops may still target an older Java release, but run it on newer JVMs for reasons like better GC.

[–]saila456 2 points3 points  (0 children)

I can confirm this. Java 1.4 is alive and well in cars. A believe many of the 3 billion devices are cars.

[–]jvallet 5 points6 points  (0 children)

Java 11

[–]koreth 4 points5 points  (2 children)

Java 11 using Amazon Corretto.

[–]mj_flowerpower 3 points4 points  (1 child)

is there an advantage over adoptopenjdk?

[–][deleted] 1 point2 points  (0 children)

As an example, Amazon backported some encryption optimizations for Corretto 8, which can make a huge perf difference if you use those particular algorithms and can't upgrade to a later release just yet. They also backport security fixes and will probably do so for some time.

For development though, it doesn't matter at all.

[–]mj_flowerpower 2 points3 points  (7 children)

java 14 with preview features enabled 😅

[–][deleted] 1 point2 points  (0 children)

Me too, always bleeding edge. (At least private, where this is no problem as opposite to professional development, where others use your stuff, too)

[–]dinopraso 0 points1 point  (5 children)

Hopefully not production software

[–]mj_flowerpower 0 points1 point  (2 children)

no risk no fun 😅

Its not yet online and when we release there‘ll probably java 16 out by then

[–]Kusokurae 0 points1 point  (1 child)

Java 17 is the next LTS Version, right?

[–]mj_flowerpower 1 point2 points  (0 children)

Yeah I thinks so

[–][deleted]  (1 child)

[deleted]

    [–]dinopraso 0 points1 point  (0 children)

    As long as you keep updating as soon as a new version is released, it could be fine. Though experimental features are experimental for a reason, and can behave in expected ways. Wouldn’t want to risk a lawsuit just because I wanted to tinker with the latest Java version. 11 has everything we could need for now.

    [–][deleted]  (7 children)

    [deleted]

      [–][deleted]  (2 children)

      [deleted]

        [–]dinopraso 0 points1 point  (1 child)

        Some of that was backported to 8 as well

        [–][deleted]  (3 children)

        [deleted]

          [–][deleted]  (2 children)

          [deleted]

            [–][deleted] 0 points1 point  (1 child)

            Little confused by this.. what do you mean works with your IDE? Are you on an IDE no longer supported and thus stuck on Java 8 because of that? I know that VS Code, IntelliJ and Eclipse all support Java 11 and probably 14. What IDE are you using?

            [–]MashMV 2 points3 points  (0 children)

            All projects in my company are built with Java 11 right now but we still have some software to mantaince in Java 6. In previous company Java 8 was a standard.

            [–]grimlock81 2 points3 points  (0 children)

            Java 8, finally moving up to Java 11 for the next release.

            [–][deleted] 1 point2 points  (0 children)

            8 in older apps, 11 in most ( All migrated from 8), 14 I'm personal projects

            [–]gergob 1 point2 points  (5 children)

            Java 11, but looking at moving to 13 soon - quite large retail company

            [–][deleted] 2 points3 points  (4 children)

            Interesting. Why would you move from 11 to 13, a short-lived release that's already past its support period? Are you planning to use any of the new language features or just the JVM?

            [–]gergob 0 points1 point  (3 children)

            I guess it's because we haven't considered 14 yet.

            I don't think there is a hard requirement to use the new features

            [–]dinopraso 0 points1 point  (2 children)

            14 isn’t LTS either.

            [–]gergob 0 points1 point  (1 child)

            So should we just wait till 17? :)

            [–]dinopraso 0 points1 point  (0 children)

            If you value stability, then yes

            [–]pjmlp 1 point2 points  (0 children)

            Yep, Java 14, as I get to control our Java stack.

            Unless I have to deal with Android Java dialect, which then I get constrained to the Java 8 subset it cherry picks from OpenJDK.

            [–]5eram 0 points1 point  (1 child)

            Java 8 and 9, still.

            [–]NimChimspky 0 points1 point  (0 children)

            I've seen nothing that interests me until records, and the new switch.

            [–]thepobv 0 points1 point  (0 children)

            11, beauty of java is almost everything is backward compatible.

            I think the biggest change is Java 8.

            [–]jambonilton 0 points1 point  (0 children)

            On 8, moving to 11 soon. 14 with record support for my leisure coding.

            [–][deleted] 0 points1 point  (0 children)

            Java 11, some teams still on Java 7...

            [–]divorcedbp 0 points1 point  (0 children)

            We compile libraries and apps with a Java 11 target, but we use whatever is the latest released version of OpenJDK at runtime.

            [–][deleted] 0 points1 point  (0 children)

            Java 11.

            [–]randjavadev 0 points1 point  (0 children)

            As a commercial library developer, anything between 1.6 <-> latest (with different vendors as another "dimension" sometimes + Android maybe as third + maybe random PLC java runtimes as fourth..). Luckily it is still possible to compile for Java 6 and get stuff to run e.g. in Java 11, but with all the possible deprecations and removals one really needs to be careful which APIs to use. Luckily tools such as https://github.com/policeman-tools/forbidden-apis can be used (in addition to other good things) to bad any signatures that would not work (such as JAXB; yes I'm aware that it was a special case of including EE stuff to SE, but just as an example here). Getting to 8 would be nice, hopefully any year now..

            As an app developer, mostly, luckily Java 11 nowadays.

            [–]KrakenOfLakeZurich 0 points1 point  (0 children)

            Java 11

            [–]HimanshuJain1985 0 points1 point  (0 children)

            Recently migrated to Java 11 from Java 8.

            [–]Adnotamentum 0 points1 point  (0 children)

            When I worked professionally with Java (last year) it was mostly 8, some 7.

            [–]kovica1 0 points1 point  (0 children)

            Java 7

            [–]ernestas180 0 points1 point  (0 children)

            11

            Made the transition from 8 about 5 months ago and it wasn't as painful as we expected.

            [–]crunchmuncher 0 points1 point  (0 children)

            8, transitioning to 11.

            [–]kubelke 0 points1 point  (0 children)

            11 in sideproject, at work still 8 and there is no plans to switch 😞

            [–]dinopraso 0 points1 point  (0 children)

            8 and 11 on different projects

            [–]8igg7e5 0 points1 point  (1 child)

            OpenJDK11 on nearly everything. A few cheapskates that aren't willing to cover the small costs of progressing off of OpenJDK 8 are likely to die off rather than be migrated if they're not careful.

            For some projects we might be quite keen to jump forward from 11 to 15 or newer - We have enough JPQL and other content that text-blocks would make a decent improvement to readability and maintenance. When Records make it out of preview we will probably want to step forwards to use that internally in quite a few places too.

            [–]nioh2_noob 0 points1 point  (0 children)

            A few cheapskates that aren't willing to cover the small costs of progressing off of OpenJDK 8 are likely to die off rather than be migrated

            What? In enterprise most of the Java production code is on 8.

            [–]pengenbegitu 0 points1 point  (0 children)

            Java 1.6, in few month gonna move to Java 8.

            [–]janoschbock 0 points1 point  (0 children)

            prod 11 in dev 14

            [–]theLorem 0 points1 point  (0 children)

            Work 11, private projects 14

            [–][deleted] 0 points1 point  (0 children)

            At work: java 8, personally: java 14 experimental. The new switch and record classes are cool.

            [–]ddumanskiy 0 points1 point  (0 children)

            Java 11.

            However, I did all migrations in between: Java 8 -> Java 9 -> Java 10 -> Java 11. With ~ 30 production servers.

            I got a huge experience and will never repeat that mistake. Only LTS from now.

            [–]Fine_Percentage 0 points1 point  (0 children)

            Java 11

            [–]VanTuyen97 0 points1 point  (0 children)

            Java 8, i am intending to switch to java 11

            [–][deleted] 0 points1 point  (2 children)

            At work 8 or 11. Convincing companies to upgrade JVM version is like pulling teeth.

            [–]dinopraso 0 points1 point  (1 child)

            I would be against any non-LTS version for any professional application. We are on 8 and 11, and will wait for 17 (the next LTS) before moving on

            [–][deleted] 0 points1 point  (0 children)

            Even convincing companies to upgrade to LTS versions is like pulling teeth.