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

IndexOutOfBounds Exception after start on Linux OpenJDK #10

Open
galennare opened this issue Dec 6, 2021 · 4 comments
Open

IndexOutOfBounds Exception after start on Linux OpenJDK #10

galennare opened this issue Dec 6, 2021 · 4 comments

Comments

@galennare
Copy link

galennare commented Dec 6, 2021

I am trying to run JTegraNX on KUbuntu 21.04 with OpenJDK 1.11.0 or 1.8.0. I get the following exception after selecting either standard mode or portable mode on start:

WARNING: Unsupported JavaFX configuration: classes were loaded from 'unnamed module @521b91c3' Exception in Application start method Exception in thread "main" java.lang.RuntimeException: Exception in Application start method at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:900) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0 at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248) at java.base/java.util.Objects.checkIndex(Objects.java:372) at java.base/java.util.ArrayList.get(ArrayList.java:459) at git.GitHandler.generateLatestRelease(GitHandler.java:57) at handlers.PayloadHandler.updatePayloads(PayloadHandler.java:65) at ui.fx.JTegraNX.start(JTegraNX.java:157) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:846) at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:474) at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:447) at java.base/java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:446) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96) at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method) at com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$11(GtkApplication.java:277) ... 1 more

In case it is useful, this is the start script I am using:
#!/bin/env bash
export SUDO_ASKPASS=$(kdialog --password "This application requires root permissions to proceed.")
sudo -A /usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -jar /usr/bin/JTegraNX.jar

@galennare
Copy link
Author

This exception is also thrown when running with the most recent Oracle JDK 11.

@dylwedma11748
Copy link
Owner

Yeah this issue is happening cause of the payload updater, GitHub made an update that broke my code, I got it fixed for 1.7 but it's not ready for release. For now you need to disable all the auto updaters from the settings.

In case you can't do that, this config file will allow you to get past this.

[SETTINGS]
savedFolderPath=null
savedPayloadPath=
selectedConfig=No configs
lastSelectedBundledPayload=
autoInject=false
checkJTegraNXUpdates=false
checkPayloadUpdates=false
enableTrayIcon=false
includeFussePrimary=false
includeHekate=false
includeLockpickRCM=false
includeTegraExplorer=false
minimizeToTray=false

Save it as "JTegraNX.ini" in the same directory as the JAR file. This will make JTegraNX load in portable mode with auto updates disabled.

@galennare
Copy link
Author

galennare commented Dec 15, 2021 via email

@Wirexuser01
Copy link

Yeah this issue is happening cause of the payload updater, GitHub made an update that broke my code, I got it fixed for 1.7 but it's not ready for release. For now you need to disable all the auto updaters from the settings.

In case you can't do that, this config file will allow you to get past this.

[SETTINGS] savedFolderPath=null savedPayloadPath= selectedConfig=No configs lastSelectedBundledPayload= autoInject=false checkJTegraNXUpdates=false checkPayloadUpdates=false enableTrayIcon=false includeFussePrimary=false includeHekate=false includeLockpickRCM=false includeTegraExplorer=false minimizeToTray=false

Save it as "JTegraNX.ini" in the same directory as the JAR file. This will make JTegraNX load in portable mode with auto updates disabled.

Thanks. It works for me with jdk11.

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

3 participants