Pages: [1]
  Print  
Author Topic: OpenJDK is haunted  (Read 814 times)
Offline (Male) Goombert
Posted on: April 02, 2016, 10:40:25 PM

Contributor
Location: Cappuccino, CA
Joined: Jan 2013
Posts: 3060

View Profile


I am becoming more and more convinced that OpenJDK is haunted with ghosts. I can't recall exactly how many, but there's been a lot, of people show up and once they install the Oracle JDK their LGM problems seem to just vanish.

Like this gentleman:
https://github.com/IsmAvatar/LateralGM/issues/258

It seems that the general consensus is that OpenJDK is pretty buggy for all Java applications. I've gone and tested specific cases where the exact same Swing GUI code is fine in Oracle JDK but deadlocks in OpenJDK for no apparent reason. This used to be even more apparent in the Java 6 days with the default Ubuntu Java apparently.
https://www.reddit.com/r/linux/comments/pvn2s/linux_rejects_oracle_jdk_but_oracle_jdk_supports/c3slzyr
http://askubuntu.com/questions/437752/openjdk-oracle-is-better
http://comments.gmane.org/gmane.comp.java.openjdk.general/1748
https://news.ycombinator.com/item?id=10810508
http://www.linuxquestions.org/questions/slackware-14/openjdk-7-problem-with-swing-gui-apps-on-slackware64-13-37-current-927237/

For these reasons I have updated the download page to recommend the use of Oracle JDK. From now on, I would also recommend that if you have GUI problems such as dialogs freezing that you try to install Oracle's JDK first before reporting the issue to our tracker.
http://enigma-dev.org/docs/wiki/index.php?title=Install&action=historysubmit&diff=30805&oldid=30735

I really don't think I understand why it is that OpenJDK is in such a poor condition. It's apparently just the Oracle JDK with proprietary code removed and under an open source license. I mean, the biggest contributor to OpenJDK is.... Oracle itself. So I am not sure I see any real reason for the disparity of the two JDK's.
« Last Edit: April 02, 2016, 10:46:38 PM by Robert B Colton » Logged
Offline (Unknown gender) egofree
Reply #1 Posted on: April 08, 2016, 06:54:53 AM
Contributor
Joined: Jun 2013
Posts: 611

View Profile Email
Yeah, i know how it feels ! I had similar problems :



But fortunately, i had a friend who could fix this problem :



If you need help, don't hesitate to tell me, and i will give you his address also !  :D

Even worse, sometimes i had to go myself deep into the code (with no comments ! imagine the horrible place !  :ohdear: )



To find and destroy nasty bugs :



Who said that programmer's life is not dangerous !  ;D
« Last Edit: April 08, 2016, 07:11:30 AM by egofree » Logged
Offline (Male) Goombert
Reply #2 Posted on: April 08, 2016, 08:55:24 AM

Contributor
Location: Cappuccino, CA
Joined: Jan 2013
Posts: 3060

View Profile
Hahaha, I think these ghosts are honestly more in our face about it though, like this:


This morning I ran onto this issue as well. Reason #103949505993345500669990495 that cross-platform UI kits just plain suck.
https://github.com/IsmAvatar/LateralGM/issues/263

I still really like the idea of porting the project over to SharpGM for people, like me, who enjoy a true native UI. The only thing is I just don't have time, but that is such an extremely easy project because C# has its roots in Java historically. I've already tried some things and most of the code is 1-to-1 between Java and C#, just without all the hassle.
Logged
Offline (Unknown gender) egofree
Reply #3 Posted on: April 09, 2016, 04:05:46 AM
Contributor
Joined: Jun 2013
Posts: 611

View Profile Email
I still really like the idea of porting the project over to SharpGM for people, like me, who enjoy a true native UI.

But then, it's no more cross-platform, right ?
Logged
Offline (Male) Goombert
Reply #4 Posted on: April 09, 2016, 04:47:36 AM

Contributor
Location: Cappuccino, CA
Joined: Jan 2013
Posts: 3060

View Profile
No, not if you follow you follow three tier architecture (not to be confused with Model-View-Controller!), you can write the UI layer multiple times. For example, you use the same logic tier and replace the front end with either GTK# or Windows Forms. Underneath it is the same code but uses different GUI layers on top, it's very common. So for example the file readers and writers would be written in plain C# with no GUI dependencies along with the action format reader etc and then each version would reuse that code.
https://en.wikipedia.org/wiki/Multitier_architecture

But I also really liked Qt really well too and it would probably save even more work if you wanted cross-platform. What I hate is if you read my latest comment to this issue, I've discovered another case where if we were using Qt LGM would not have any of the weird problems like it always does.
https://github.com/IsmAvatar/LateralGM/issues/263#issuecomment-207704471

Right now I think everyone would be happiest if LGM was written in Qt. Harri would get a native IDE written in C++ like he wants. I wouldn't have to deal with anymore Swing bugs. And it would work for multiple platforms like LGM does which everyone wants.
Logged
Offline (Unknown gender) egofree
Reply #5 Posted on: April 11, 2016, 06:24:08 AM
Contributor
Joined: Jun 2013
Posts: 611

View Profile Email
By the way, did you see that Google is planning to use OpenJDK for the next versions of Android ? :
http://arstechnica.com/tech-policy/2016/01/android-n-switches-to-openjdk-google-tells-oracle-it-is-protected-by-the-gpl/

Well, it's no wonder Google is trying to get rid of Oracle, as Oracle is asking huge amount of money.

But for the future, they think about using Swift :
http://thenextweb.com/dd/2016/04/07/google-facebook-uber-swift
« Last Edit: April 11, 2016, 06:28:58 AM by egofree » Logged
Offline (Male) Goombert
Reply #6 Posted on: April 11, 2016, 06:49:35 AM

Contributor
Location: Cappuccino, CA
Joined: Jan 2013
Posts: 3060

View Profile
No I did not know about that, but that should be really good for the OpenJDK and open source in general though. It will likely be a significant engineering task for them though.
Logged
Pages: [1]
  Print