ripme: Cant run version 2.1.4 with java 17

  • Ripme version: ripme-2.1.4-38-836a7494.jar
  • Java version: java 17.0.8 2023-07-18 LTS Java™ SE Runtime Environment (build 17.0.8+9-LTS-211) Java HotSpot™ 64-Bit Server VM (build 17.0.8+9-LTS-211, mixed mode, sharing)
  • Operating system: Widows 10, Version 21H2
  • Please include any additional information about how to reproduce the problem: had prior Java 17.0.4 and thought it still would be fine since it said default to java 17, but it failed starting. Then I chose to update to the newest Java 17 (17.0.8) from https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html but that fails still the same way

Expected Behavior

The expected behavior was it to start the java application but it wont start ( ripme-2.1.3-7-3545cfbd.jar starts fine )

Actual Behavior

It wont start since it says its compiled with a to recent version

C:\Portable\RipMe>java --version
java 17.0.8 2023-07-18 LTS
Java(TM) SE Runtime Environment (build 17.0.8+9-LTS-211)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.8+9-LTS-211, mixed mode, sharing)

C:\Portable\RipMe>java -jar ripme-2.1.4-38-836a7494.jar
Error: LinkageError occurred while loading main class com.rarchives.ripme.App
        java.lang.UnsupportedClassVersionError: com/rarchives/ripme/App has been compiled by a more recent version of the Java Runtime (class file version 64.0), this version of the Java Runtime only recognizes class file versions up to 61.0

Detail the actual (incorrect) behavior here. You can post log snippets or attach log files to your issue report.

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Reactions: 2
  • Comments: 18

Most upvoted comments

And that is specially there with my rss reader I saw that as soon java 21 also were installed then it failed right away since its posible using environment path ( and I have seen it several times just the one I remember off top of my head ) and possible that is only looks at program name in path

@tanja84dk , i checked RSSOwlnix, and it does NOT need JAVA_HOME set to build and run, see here: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=rssowlnix

this thing contains a bug though, as it does not set the path to java before running rssowl which makes it fail as you described.

$ cat /usr/bin/RSSOwlnix 
#!/bin/bash
export RSSOWLNIX_HOME=/usr/lib/RSSOwlnix
exec $RSSOWLNIX_HOME/RSSOwlnix "$@"

add the correct java to the PATH, and it works. you do not add it to your global path variable, only when starting something which needs an old one. same is valid to start eclispe as well, create a shell or windows cmd file and set the path to java before:

$ cat /usr/bin/RSSOwlnix 
#!/bin/bash
export PATH=/usr/lib/jvm/java-11-openjdk/bin:$PATH
export RSSOWLNIX_HOME=/usr/lib/RSSOwlnix
exec $RSSOWLNIX_HOME/RSSOwlnix "$@"

I cloned the git repo, I was able to build it and it built out a jar with filename ripme-2.1.5-4-3410a517.jar so I can now run this app again since I use Java 17 as my default now.

the version number is set by a gradle plugin: https://github.com/jgitver/gradle-jgitver-plugin, and it takes the version out of the last tag in the git repository. if you clone the repo and build it should do the trick https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository

@tanja84dk nowadays you should not set java home any more. you set the bin directory into the path maybe or you call java with its full path. on windows as well linux. when ou call java, it knows where it is installed.

I had my JAVA_HOME set to Java 11 not 17 so that’d do it lol

I was able to build it now with Java 17, however, it looks like it builds a ripme-0.0.0-NOT_A_GIT_REPOSITORY.jar which of course has a version number of 0.0.0, so I still get the update prompt every launch: image

Yeah that help alot and no worries at all. I’m gonna try looking into how they set the version number this weekend to see if there is a way around that since I totally forgot that ( I’m normally using it cli based )

I finally was able to run it by just installing the Java SDK 21 now that it’s out of Beta

True that is also a possibility but unfortunately that aren’t a prober fix in a way. Like for me I have several programs there rely on Java 17 which it says are supported and if I install lets say 21 and that is set as java home then it’s breaking the other programs

I have the same issue. Java 17 is class file version 61, so this is using Java 21 instead I guess even though it says Java 17 in the changelog?

What it looks like for me then it looks like its Java 20 at this point https://javaalmanac.io/bytecode/versions/

But the worrying part there is that Java 20 is really soon EOL ( next month ) because its not a LTS as 17 is ( looks like java 17 isnt EOL before 2030 because of LTS )

So yeah looks like I guess its gonna be Java 21 ( which I cant use ) or stay on the old release ( since the java 20 is EOL next month )

EDIT: I found out that if I build it myself from https://github.com/ripmeapp2/ripme/tree/2.1.5 ( with the java 17.0.8 2023-07-18 LTS ) then it worked fine, so I guess its because the build system they use for some reason are running a newer version then they state

I have the same issue. Java 17 is class file version 61, so this is using Java 21 instead I guess even though it says Java 17 in the changelog?

I’m having a similar issue, Java 17 but 2.1.4 won’t start even though 2.1.3 does