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

Launch failed after upgrading to macOS 11 #360

Closed
gzjaychen opened this issue May 11, 2021 · 10 comments
Closed

Launch failed after upgrading to macOS 11 #360

gzjaychen opened this issue May 11, 2021 · 10 comments

Comments

@gzjaychen
Copy link

After upgrading macOS from 10.15 to 11.3.1 (20E241)

ERROR launching 'JD-GUI'
No suitable Java version found on your system!
This program requires Java 1.8+
Make sure you install the required Java version.

java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)

@meb21uk
Copy link

meb21uk commented May 22, 2021

Navigate in terminal to the JD-GUI.app/contents. Open Info.plist using VI and remove the + from 1.8+. Should work now.

@bric3
Copy link

bric3 commented Jun 16, 2021

If the machne don't have a JDK 1.8 but JDK 11, replace 1.8+ by 11

@jeliker
Copy link

jeliker commented Aug 11, 2021

I solved for my installation by getting latest universalJavaApplicationStub code from here and replacing in the app bundle: https://github.com/tofi86/universalJavaApplicationStub

@gzjaychen
Copy link
Author

Navigate in terminal to the JD-GUI.app/contents. Open Info.plist using VI and remove the + from 1.8+. Should work now.

It works.

@ajmas
Copy link

ajmas commented Nov 15, 2021

I am a little confused with the current state of JDKs & JREs, since java.com provides 1.8.0-31, while https://www.oracle.com/java/technologies/ provides version 17.

Anyhow, after having removed the '1.8+' value in the plist I now get the following when launching from the command line, using the universalJavaApplicationStub.sh script in the bundle:

/Library/Java/JavaVirtualMachines/jdk-16.0.2.jdk/Contents/Home
Exception in thread "main" java.lang.IllegalAccessError: class org.jd.gui.OsxApp (in unnamed module @0x13545af8) cannot access class com.apple.eawt.Application (in module java.desktop) because module java.desktop does not export com.apple.eawt to unnamed module @0x13545af8
	at org.jd.gui.OsxApp.main(Unknown Source)

I suspect that jdk-16 (latest I had on my computer) and other non 1.8 numbered versions represent a different code base? Is this an Oracle JDK vs Open JDK thing?

Update reading through the script shows I can over-ride the JVM home selected via JAVA_HOME. Doing the following and trying to using the script let me launch using the appropriate version of the JVM:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home 

@bric3
Copy link

bric3 commented Nov 16, 2021

JDK 1.8 u31 is reaaaaally old, there have been many updates since then, fixing bugs ad CVEs.
Aren't you referring to u311 instead ?

I suspect that jdk-16 (latest I had on my computer) and other non 1.8 numbered versions represent a different code base? Is this an Oracle JDK vs Open JDK thing?

No it's a change in the runtime that happened between JDK 8 and JDK 17. That's why the latest compatible version with JD-GUI is JDK 11.

@jackzhangdev
Copy link

If the machne don't have a JDK 1.8 but JDK 11, replace 1.8+ by 11

this works for me

@Lorenzo45
Copy link

I couldn't get it to work but I found this alternative that works well: https://plugins.jetbrains.com/plugin/17851-jadx-android-decompiler

@Boat2017
Copy link

Boat2017 commented Dec 31, 2021 via email

@NxsHbb
Copy link

NxsHbb commented Jun 1, 2022

If the machne don't have a JDK 1.8 but JDK 11, replace 1.8+ by 11

Worked for me.

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

9 participants