Announcement

Collapse
No announcement yet.

The State of OpenJDK In Early 2018

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by Michael_S View Post
    On the other hand, OpenJDK9 can't run graphical programs for me on Linux. Java Swing-related stuff just crashes, including Minecraft. I had to switch to the Oracle JDK for my kids to keep playing it.
    That's pretty awful, what's the ID of your bug report?

    Comment


    • #12
      They should definitely work on getting JavaFX a part of OpenJDK. It would help to make it more available and it is necessary for it to grow in adaption to replace Swing/AWT, but to also present itself at a viable GUI framework against Qt and GTK.
      As of now it is provided with OpenJfx which not all Linux distribution provides because of difficulty of building it.

      Comment


      • #13
        Originally posted by DJViking View Post
        They should definitely work on getting JavaFX a part of OpenJDK. It would help to make it more available and it is necessary for it to grow in adaption to replace Swing/AWT, but to also present itself at a viable GUI framework against Qt and GTK.
        As of now it is provided with OpenJfx which not all Linux distribution provides because of difficulty of building it.
        Isn't JavaFX pretty useless? The 3d system seems to lack a large amount of features compared to Unreal engine. I can't imagine building an AAA game for Playstation 5 with that.

        Comment


        • #14
          Originally posted by caligula View Post

          Isn't JavaFX pretty useless? The 3d system seems to lack a large amount of features compared to Unreal engine. I can't imagine building an AAA game for Playstation 5 with that.
          Far from it. There seems to be some lacking in 3D and OpenGL support which has been heavily discussed on their mailinglist. However 3D aside JavaFX is excellent for GUI application development. If your choice of language is Java, then JavaFX is a far better option than the ageing Swing. It is however not quite competitive against other GUI frameworks like Qt and GTK.

          Comment


          • #15
            Originally posted by nils_ View Post
            That's pretty awful, what's the ID of your bug report?
            Most normal users, shouldn't invest that kind of effort.

            As a user who just wants to play Minecraft, just do whatever works the easiest. The software developer should make it as easy for users as possible. Desktop apps are actually a rarity today, but the few that do, and use Java, should probably use a bundled Java that they support + test. Games like Wakfu do this. The JetBrains IDEs do this. Java 9 modules should ultimately make this nicer, but that is slow to gain adoption.

            Comment


            • #16
              Originally posted by caligula View Post

              Isn't JavaFX pretty useless? The 3d system seems to lack a large amount of features compared to Unreal engine. I can't imagine building an AAA game for Playstation 5 with that.
              JavaFX was never intended as a game engine and is not appropriate for that. JavaFX is intended more for business/data desktop apps, which is basically a dead category. JavaFX is analogous to Microsoft's WPF or Silverlight; no one wants to make desktop point and click apps any more; that's all web/JavaScript now.

              The one big exception is IDEs. There, desktop GUIs still make sense, and web GUIs are more niche use. JetBrains is the notorious king of IDEs. And while they support every major language out there. I work with Python developers, and while some hard core guys sear by vim or emacs, almost everyone else uses JetBrains PyCharm. And all the JetBrains IDEs use Java and Java Swing internally for the GUI. Python developers don't have to see or touch the Java at all. The IDEs have custom bundled JDKs that the user doesn't have to touch.

              And why hasn't JetBrains switched from Swing to JavaFX? I would guess the benefits simply don't outweigh the port efforts. JetBrains has already perfected their current product and platform.

              Java could be used for game engines but it's not. Unity is easily one of the best game engines out there. Unity is internally implemented in C/C++, but the game dev API is all C#. Unity could have used Java instead, it would have worked, but they didn't. I don't see C#/Java as necessarily better or worse. The Unity ecosystem is 100% C#, it's extremely well developed, and there is no reason to change it.

              Comment


              • #17
                Originally posted by DanLamb View Post

                JavaFX is intended more for business/data desktop apps, which is basically a dead category. JavaFX is analogous to Microsoft's WPF or Silverlight; no one wants to make desktop point and click apps any more; that's all web/JavaScript now.
                Well.. maybe native, purely business apps for ordinary users and mundane tasks are dead, but many power users / home users mainly work with native apps. I've only replaced few apps with web services. I even use local IMAP mail app although I could use webmails. Lots of command line. It's nice that some apps are available as services, but the usability and scaling is a bit lacking.. just my $0.02

                And why hasn't JetBrains switched from Swing to JavaFX? I would guess the benefits simply don't outweigh the port efforts. JetBrains has already perfected their current product and platform.
                I'd guess they have been evaluating it for some time now, but it takes time to replace stuff. Their app doesn't really use any of the more advanced features.

                Comment


                • #18
                  Originally posted by DanLamb View Post

                  Most normal users, shouldn't invest that kind of effort.
                  Perhaps, but maintaining an installation of Oracle JRE just to play minecraft sounds like a drag too.

                  Comment


                  • #19
                    Originally posted by nils_ View Post

                    Perhaps, but maintaining an installation of Oracle JRE just to play minecraft sounds like a drag too.
                    I agree. End users, especially users of games, shouldn't have to know or care about the developer-side technologies used in making the software.

                    Other desktop Java software like JetBrains IDEs or games like Wakfu bundle a Java runtime that the user doesn't have to see or think about or be responsible for installing/maintaining.

                    libgdx games are written in Java, they use an embedded Java runtime, they run on iPhone/Android, and users don't have to know or care what tools the game was written in.

                    Comment


                    • #20
                      Originally posted by caligula View Post
                      Well.. maybe native, purely business apps for ordinary users and mundane tasks are dead, but many power users / home users mainly work with native apps.
                      "native apps" is a bad or at least a confusing label. Some people use that label to refer to apps written in C and not apps written in Java/libgdx or C#/Unity or JavaScript, which isn't an important distinction. Normal users care about the user experience, not the the developer side technologies.

                      You use an IMAP email client... Most people do have email phone/tablet apps, and use browser-based clients on their workstation/laptop. The days of full workstation email apps like Outlook or Thunderbird are mostly over.

                      I do believe the days of WinForms apps or Java Swing apps is mostly over, with a few important exceptions, notably JetBrains IDEs.

                      I use tons of local command line software... I use GUI desktop software like: web browser, chat client, IDE, text editor, pdf viewer, and a shell terminal. And maybe a game or two after work

                      Comment

                      Working...
                      X