Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feedback - not a blocking issue. Clarifying the java version dependency #69

Open
tauCete opened this issue Nov 25, 2024 · 1 comment
Open

Comments

@tauCete
Copy link

tauCete commented Nov 25, 2024

Hi,

I think this tool, iTunes Backup Explorer, depends on the JDK and you might want to clarify that on the readme. I had the JRE installed on macOS and when I downloaded and tried to run the itunes-backup-explorer-1.5.jar file I get the following error.

Exception in thread "main" java.lang.UnsupportedClassVersionError: 
me/maxih/itunes_backup_explorer/ITunesBackupExplorerLauncher has been compiled by
a more recent version of the Java Runtime (class file version 62.0), this version of
the Java Runtime only recognizes class file versions up to 52.0
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:473)
	at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:359)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
	at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:641)

Background:
I ran this in terminal to check if my version was > 18 per the readme.

java -version                           
java version "1.8.0_431"
Java(TM) SE Runtime Environment (build 1.8.0_431-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.431-b10, mixed mode)

Since I got two values one below and one above 18, I continued with trying to run java -jar itunes-backup-explorer-1.5.jar. That's when I received the error above. I know you have the link to download a newer java version from azul.com, but I don't know that site and didn't want to download and run anything from it. I updated my JRE to the latest (1.8.0_431) and got the same error. I looked around in the GitHub project and in the GitHub dependency list I saw this.

org.bouncycastle:bcprov-jdk18on
1.78.1
Maven · pom.xml · Detected automatically on Aug 05, 2024 · MIT

That's when I realized when you said Java you meant JDK and since the Oracle JDK version number is 23 (> 18), I tied installing it and now I am able to run the iTunes Backup Explorer.

@MaxiHuHe04
Copy link
Owner

Hi!
The current situation with the Java environment is bad, I know. Especially if you are not really into Java, I understand the confusion. Just for your information, the relevant number in the version string 1.8.0_xxx is 8. The corresponding pruduct is called Java SE 8. For this application, you need at least Java SE 18 at the moment. Whether you download a JRE or JDK doesn't really matter. JREs are generally not distributed separately anymore, but JDKs include them.
For the future, I have been planning to change the install process so that there is just one installer and no pre-installed Java will be required. Unfortunately it's a bit complicated supporting many platforms and I don't have much time for this project so it will probably still take a while.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants