Menu

#174 Incompatible with modern java (jre 16, 17)

1.9.1
open
nobody
None
Other
Arch_Linux
Other
Other
Trivial
2023-07-07
2022-03-25
No

* this is not a problem read threads

At some point between java version 11 and java version 16 a change occurred that broke major functionality in project libre. Using java version 16 the task add, task delete, indent and outdent buttons no longer function. Given that Java 7 can be considered functionally EOL, it is completely unreasonable that it is the newest version listed on the ticket creation page (and presumably the newest officially supported version).

Discussion

  • Benjamin Herne

    Benjamin Herne - 2022-03-25
    • summary: Incompatible with modern java (bre 16, 17) --> Incompatible with modern java (jre 16, 17)
     
    • Tahoeob

      Tahoeob - 2022-03-26

      This is not correct. There are different packages, the Mac and Windows package are bundled with a virtual machine, so it’s independent of java system version. It is possible if you are not using our installation bundle you might find something but this is not accurate. The JVM is bundled so independent of the java version.

       
      • sf

        sf - 2022-04-20

        Maybe you didn't read the bug report, as it clearly states that this software does not work with Arch Linux. I can confirm that it does not work with a recent Ubuntu release (21.10) either. Most buttons have no effect, like task insert, delete, indent, outdent.
        I even tried with both openjdk-11-jdk and Oracle Java 11 and setting them to be the default java version, but the result is the same. The only thing I didn't try is uninstalling Java 17, as this would mess with other, up-to-date software.

         
        • Benjamin Herne

          Benjamin Herne - 2022-04-23

          Did you try manually running java 11 directly? It would depend on how ubuntu manages multiple java versions, but on arch linux all versions get installed to /usr/lib/jvm/${version}, and the binaries for each are stored in /usr/lib/jvm/${version}/bin/. My own personal method is to temporarily add the binary directory to my PATH, so that it selects the right version automatically. I've even got a script to do it for me - the script probably only works on arch, but you might be able to adapt it to ubuntu. The script is as follows:

              export PATH="/usr/lib/jvm/$1/bin/:$PATH"
              shift
              exec "$@"
          

          where $1 is the name of the java version, and the program you want to run comes after. So, for instance, for me on arch linux with openjdk-11 installed,I would run
          $ javaRun java-11-openjdk projectlibre

           
          👍
          1

          Last edit: Benjamin Herne 2022-04-23
          • sf

            sf - 2022-05-09

            Well I tried something like this, except the paths are not the same on Ubuntu, but I couldn't get it to run. I also tried altering the JAVA_HOME environment variable, to no avail, then I got fed up and stopped trying.

             
  • Tahoeob

    Tahoeob - 2022-05-08
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -1 +1,3 @@
    +**** this is not a problem  read threads ***
    +
     At some point between java version 11 and java version 16 a change occurred that broke  major functionality in project libre. Using java version 16 the task add, task delete, indent and outdent buttons no longer function.  Given that Java 7 can be considered functionally EOL, it is completely unreasonable that it is the newest version listed on the ticket creation page (and presumably the newest officially supported version).
    
    • Severity: Major --> Trivial
     
    • sf

      sf - 2022-05-09

      @Tahoeob you don't seem to understand the issue here.
      ProjectLibre is indeed incompatible with modern Java releases.
      This is not a problem for Windows and MacOS, as ProjectLibre is bundled with an old Java release for these OSes.
      But it is a problem for Linux, as it is getting more and more complicated to install an old Java release on a recent OS. Benjamin succeeded in running this on ArchLinux, but I failed with Ubuntu.

       
      • John Morrison

        John Morrison - 2022-09-13

        I disagree, @SF, it is a problem for windows, at least. I have many versions installed. I just removed java from PATH and cleared java_home and the app still has issues. Its pulling java from somewhere. Is there some CL option to show what the app is doing?

         
    • Joshua Einstein-Curtis

      I am in agreement with @sf -- this is not trivial. If this is to continue being open source, and if it doesn't support modern java, then at the least a big note needs to be placed somewhere, or a warning on run. I was able to get it working by downloading jre 8.0 for Linux x64 from here (https://javadl.oracle.com/webapps/download/AutoDL?BundleId=246799_424b9da4b48848379167015dcc250d8d), but native packages and newer versions don't work at all with the issues listed above (i.e. can't remove lines, indent, outdent, etc)

       
  • VVD

    VVD - 2022-09-12

    FreeBSD 13.1 amd64.
    Work for me with OpenJDK 11:

    $ java -version
    openjdk version "11.0.16" 2022-07-19
    OpenJDK Runtime Environment (build 11.0.16+8-1)
    OpenJDK 64-Bit Server VM (build 11.0.16+8-1, mixed mode)
    

    Have issues with OpenJDK 17:

    $ java -version
    openjdk version "17.0.4" 2022-07-19
    OpenJDK Runtime Environment (build 17.0.4+8-1)
    OpenJDK 64-Bit Server VM (build 17.0.4+8-1, mixed mode, sharing)
    
     
  • John Morrison

    John Morrison - 2022-09-13

    Same problem with Windows. I had to build a simple script to setup the env vars to use Java 6 and the jar file. It works great then. I'm really happy with the app. I was getting frustrated with the little quirks that caused visual issues and hangs. I'm satisfied that the app is good and I'll continue to use it.

    I get errors outside of Java 6. I tried 8, 11, and whatever the latest is. The errors appear to be AWT / Swing related. I'm sure it will take a bit of work the fix the problems and make sure its backward compatible.

    I don't have a lot of time, but I've done my share of standalone Java programming. Check my linked-in page for CV (https://www.linkedin.com/in/jbmorrison/). If there is a way to join the team for maintenance and bugfix, I'd like to volunteer.

    Thanks
    John Morrison

     
  • David ROUMANET

    David ROUMANET - 2022-11-19

    I can confirm Benjamin troubleshoot (I'm under Manjaro, an Arch linux based OS too).
    Main visible difference is selecting multiples rows: with modern Java version, only two first columns are inverted ; with openjdk11 all columns are selected.

    /usr/lib/jvm> ls                                                     
    default  default-runtime  java-11-openjdk  java-11-openjfx  java-19-openjdk  java-19-openjfx  java-8-openjdk
    

    Java version clearly have an influence on ProjectLibre functionnality
    See image: https://i.imgur.com/k2N6Lnv

     

    Last edit: David ROUMANET 2022-11-19
  • David ROUMANET

    David ROUMANET - 2023-07-07

    Why developpers are not responding to this issue on Linux?
    We've to use a script to launch ProjectLibre because right click menu isn't available with modern version of Java. That's not secure and not understandable.

    Please explains what is the problem, why it's not possible to use a correct version of Java? why it's so dependant of an old version?

     

Log in to post a comment.