Why Sponge requires Java 8?

I don’t really know if the lastest stable release require Java 8, but at least in the master git branch it does.

There is a lot of reasons to not update, stay in Java 6/7 and just a few ones to update to Java 8.

I want to know why this decision was made.

There is some discussion of this topic here:
https://forums.spongepowered.org/t/theres-a-java-update-available/9147

1 Like

Minecraft is bunding Java with the new launcher. The Java that will be bundled is Java 8. If Minecraft requires Java 8, there is no point in Sponge lagging behind a few Java versions.

1 Like

Java 6 and 7 are both outdated. This and mojang shipping their own Java 8 launcher made us update to java8.

Other than wanting a virus, why else?
PS: Java 6/7 are no more, and basically abandoned so security bugs won’t be fixed

2 Likes

Here’s my problem: I can’t update to Java 8.
Why? Simple: my computer freezes when running any type of Java application
I’ve already seen a lot of reports sent to Oracle about this problem, and I’m still waiting for a fix.

I’ve tried running Java 8 on Windows and Linux (Ubuntu), same result. I really wanted to try lambda and other Java 8 features, but I can’t even run it.

That is what people don’t understand: Java 7 is more stable than Java 8. Java 7 works well in pretty much any supported machine, while Java 8 is still in development and it has bugs like this freezing problem

There are some discussions in this forum about Java 8. All the replies are about it’s better to not update

Mind you that these threads are 12 and 6 months old respectively.

2 Likes

Long story short, we’ve invested a lot of time already to make the update to Java 8, and downgrading to Java 6/7 is just not an option at this point.

Java 8 is stable, your freezing problem sounds like something is funky with your system setup, if anything, attempting a complete clean install of Java might help.

5 Likes

Those threads were created, respectively, one year ago or 6 months ago. The state of Java has changed much since then, and Java 8 has since gained wide adoption. According to a survey conducted late last year, around 30% of IT teams had adopted Java 8 already and 20% considered adopting it within the next 6 months. I wasn’t able to find any more recent article, but I’m sure that by now Java 8 has unquestionably more adoption than any other version, including 6 and 7.

Java 8 is not “still in development”. It was released in March 2014, nearly a year and a half ago. Java 9 is scheduled for release around a year from now, in September 2016.

In addition, Java 7 is already in the end-of-life stage. Java 7 stopped receiving updates in April 2015, a few months ago. This means that Oracle will stop updating Java 7 and will not give it any updates, including important security updates. If anything, that implies that Java 8 is absolutely more stable than Java 7 because it is actually being updated.

In summary, Java 7 is old, deprecated, and losing adoption quickly. Java 8 is stable and had been ready for usage for a while. You should check your Java installation, or attempt reinstalling Java. If nothing else is working, I suppose the best way to fix your issues is to make specific queries about the problems you are having, either on these forums or with Oracle support.

7 Likes

I formatted my computer more than 5 times trying to make Java 8 work. None of them were successful. I also tried Ubuntu, and I got the same result.
Did the same process in my friend’s computer, it worked.

It’s something wrong with my processor or something else. It does only happens with Java, any other software works well.

I know Java 7 has stopped receiving updates, but building an application in an older version does not means it will not work in another new version, you know that.
I understand the point of the Sponge team for updating to Java 8, I would too if it was not bugged this way.

Back to mod development, I guess…

Is there anything in specific that is happening with Java 8 for you? Preferably something more specific than “it freezes” or “I cannot get it to work”, because those sorts of issues are really hard to isolate and troubleshoot.

I do know that Java 8 is mostly backwards-compatible with Java 7, that wasn’t a reason for us switching though. The primary reasons that motivated Sponge to make the change were related to language features in Java 8 such as lambdas and default methods, as well as the end-of-life notice for Java 7. At the time we thought that the benefits of switching to Java 8 outweighed the costs, and I think that is even more true today.

It’s simple: I open a Java application with Java 8. In the first 10 minutes it works well, then my computer freezes, my cursor doesn’t move, my keyboard stops working, I’m forced to reboot my computer.

My computer is also not “super old”, it runs GTA V without any trouble, for example

A simple while(true) {Thread.sleep(1000);} does that :confused:

Does your computer have a 32-bit or a 64-bit processor? I know that people run into issues running the 32-bit version of Java on a 64-bit processor.

I have a 64-bit processor. When I was trying Java 8, I was using the version for 64x

What sorts of applications cause your computer to freeze? If it’s primarily Minecraft, then perhaps you want to talk to Mojang support.

Anything that uses Java.

Minecraft, IntelliJ, Netbeans, while(true) {Thread.sleep(1000);}, (the old) Chrome Updater, Minecraft Launcher…

I still have to try the most recent build. I don’t remember if it was a huge memory leak, it might be

That sounds like a good plan. Other than that, I’m not sure what to suggest other than reinstalling your operating system, or something equivalent. You say that you have done something like that several times before, so then I’m not sure :confused:

Well, I’m sure Java 8 is better than Java 7. That doesn’t mean I’m getting Java 8 anytime soon; I personally, for undisclosed reasons, think Java 8 is terrible. Any mods I’m developing for Sponge will still be developed inside a Java 7 workspace… still trying to figure out how to do that but, it will. So yeah, long live Java 7!