dylwedma11748 / JTegraNX

Another RCM payload injector written in Java and C++
GNU General Public License v2.0
107 stars 5 forks source link

IndexOutOfBounds Exception after start on Linux OpenJDK #10

Open galennare opened 2 years ago

galennare commented 2 years ago

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 commented 2 years ago

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

dylwedma11748 commented 2 years ago

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 commented 2 years ago

I added the config file and I got the same exception. On Dec 8, 2021, 17:24 -0500, Dylan Wedman @.***>, wrote:

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. —You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or unsubscribe.

Wirexuser01 commented 2 years ago

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.