java.lang.NullPointerException: Cannot invoke "de.xbrowniecodez.jbytemod.plugin.PluginManager.getPlugins()" because "this.pluginManager" is null
at de.xbrowniecodez.jbytemod.JByteMod.notifyPlugins(JByteMod.java:178)
at de.xbrowniecodez.jbytemod.JByteMod.loadFile(JByteMod.java:155)
at de.xbrowniecodez.jbytemod.Main.loadFileIfNeeded(Main.java:69)
at de.xbrowniecodez.jbytemod.Main.start(Main.java:33)
at de.xbrowniecodez.jbytemod.Main.main(Main.java:23)
Please report exceptions on github.
https://github.com/GraxCode/JByteMod-Beta (should probably change this :P)
When I opened a file like this:
~/Downloads
❯ java -jar JByteMod-Remastered-2.9.1.jar -f HelloWorld.jar
[15:02:17] [INFO] Working directory /home/archlinuxuser/JByteMod-Remastered
[15:02:17] [INFO] Loading settings...
[15:02:17] [INFO] Reading Language XML..
[15:02:17] [INFO] Successfully loaded 214 local resources and 214 default resources
[15:02:17] [INFO] Hooking discord..
[15:02:17] [INFO] 3 files to load!
WARNING: A restricted method in java.lang.System has been called
WARNING: java.lang.System::loadLibrary has been called by org.newsclub.net.unix.NativeLibraryLoader$StandardLibraryCandidate in an unnamed module (file:/home/archlinuxuser/Downloads/JByteMod-Remastered-2.9.1.jar)
WARNING: Use --enable-native-access=ALL-UNNAMED to avoid a warning for callers in this module
WARNING: Restricted methods will be blocked in a future release unless native access is enabled
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot invoke "me.grax.jbytemod.ui.PageEndPanel.setValue(int)" because "this.jpb" is null
at me.grax.jbytemod.utils.task.LoadTask.process(LoadTask.java:229)
at java.desktop/javax.swing.SwingWorker$2.run(SwingWorker.java:420)
at java.desktop/sun.swing.AccumulativeRunnable.run(AccumulativeRunnable.java:112)
at java.desktop/javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(SwingWorker.java:837)
at java.desktop/sun.swing.AccumulativeRunnable.run(AccumulativeRunnable.java:112)
at java.desktop/javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(SwingWorker.java:847)
at java.desktop/javax.swing.Timer.fireActionPerformed(Timer.java:289)
at java.desktop/javax.swing.Timer$DoPostEvent.run(Timer.java:221)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:323)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:702)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
[15:02:17] [INFO] Successfully loaded file!
[15:02:17] [INFO] Building tree..
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot invoke "me.grax.jbytemod.ui.ClassTree.refreshTree(me.grax.jbytemod.JarArchive)" because "this.jarTree" is null
at de.xbrowniecodez.jbytemod.JByteMod.refreshTree(JByteMod.java:192)
at me.grax.jbytemod.utils.task.LoadTask.done(LoadTask.java:238)
at java.desktop/javax.swing.SwingWorker$4.run(SwingWorker.java:747)
at java.desktop/javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(SwingWorker.java:837)
at java.desktop/sun.swing.AccumulativeRunnable.run(AccumulativeRunnable.java:112)
at java.desktop/javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(SwingWorker.java:847)
at java.desktop/javax.swing.Timer.fireActionPerformed(Timer.java:289)
at java.desktop/javax.swing.Timer$DoPostEvent.run(Timer.java:221)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:323)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:702)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
[15:02:17] [ERROR] Failed to hook discord
[15:02:17] [INFO] Specified file loaded
[15:02:17] [INFO] Setting Theme
[15:02:17] [INFO] Checking for updates...
[15:02:18] [INFO] Building tree..
[15:02:18] [INFO] Working directory /home/archlinuxuser/JByteMod-Remastered
[15:02:18] [INFO] Built-in plugin registered: Bytecode Diff / Patch v1.0.0
[15:02:18] [ERROR] No plugin folder found!
Also as a side idea: A proper CLI system with a nice java library like https://github.com/kusoroadeolu/Clique would be nice and maybe editing bytecode and specific classes via CLI?
java.lang.NullPointerException: Cannot invoke "de.xbrowniecodez.jbytemod.plugin.PluginManager.getPlugins()" because "this.pluginManager" is null
at de.xbrowniecodez.jbytemod.JByteMod.notifyPlugins(JByteMod.java:178)
at de.xbrowniecodez.jbytemod.JByteMod.loadFile(JByteMod.java:155)
at de.xbrowniecodez.jbytemod.Main.loadFileIfNeeded(Main.java:69)
at de.xbrowniecodez.jbytemod.Main.start(Main.java:33)
at de.xbrowniecodez.jbytemod.Main.main(Main.java:23)
Please report exceptions on github.
https://github.com/GraxCode/JByteMod-Beta (should probably change this :P)
When I opened a file like this:
~/Downloads
❯ java -jar JByteMod-Remastered-2.9.1.jar -f HelloWorld.jar
[15:02:17] [INFO] Working directory /home/archlinuxuser/JByteMod-Remastered
[15:02:17] [INFO] Loading settings...
[15:02:17] [INFO] Reading Language XML..
[15:02:17] [INFO] Successfully loaded 214 local resources and 214 default resources
[15:02:17] [INFO] Hooking discord..
[15:02:17] [INFO] 3 files to load!
WARNING: A restricted method in java.lang.System has been called
WARNING: java.lang.System::loadLibrary has been called by org.newsclub.net.unix.NativeLibraryLoader$StandardLibraryCandidate in an unnamed module (file:/home/archlinuxuser/Downloads/JByteMod-Remastered-2.9.1.jar)
WARNING: Use --enable-native-access=ALL-UNNAMED to avoid a warning for callers in this module
WARNING: Restricted methods will be blocked in a future release unless native access is enabled
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot invoke "me.grax.jbytemod.ui.PageEndPanel.setValue(int)" because "this.jpb" is null
at me.grax.jbytemod.utils.task.LoadTask.process(LoadTask.java:229)
at java.desktop/javax.swing.SwingWorker$2.run(SwingWorker.java:420)
at java.desktop/sun.swing.AccumulativeRunnable.run(AccumulativeRunnable.java:112)
at java.desktop/javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(SwingWorker.java:837)
at java.desktop/sun.swing.AccumulativeRunnable.run(AccumulativeRunnable.java:112)
at java.desktop/javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(SwingWorker.java:847)
at java.desktop/javax.swing.Timer.fireActionPerformed(Timer.java:289)
at java.desktop/javax.swing.Timer$DoPostEvent.run(Timer.java:221)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:323)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:702)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
[15:02:17] [INFO] Successfully loaded file!
[15:02:17] [INFO] Building tree..
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot invoke "me.grax.jbytemod.ui.ClassTree.refreshTree(me.grax.jbytemod.JarArchive)" because "this.jarTree" is null
at de.xbrowniecodez.jbytemod.JByteMod.refreshTree(JByteMod.java:192)
at me.grax.jbytemod.utils.task.LoadTask.done(LoadTask.java:238)
at java.desktop/javax.swing.SwingWorker$4.run(SwingWorker.java:747)
at java.desktop/javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(SwingWorker.java:837)
at java.desktop/sun.swing.AccumulativeRunnable.run(AccumulativeRunnable.java:112)
at java.desktop/javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(SwingWorker.java:847)
at java.desktop/javax.swing.Timer.fireActionPerformed(Timer.java:289)
at java.desktop/javax.swing.Timer$DoPostEvent.run(Timer.java:221)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:323)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:702)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
[15:02:17] [ERROR] Failed to hook discord
[15:02:17] [INFO] Specified file loaded
[15:02:17] [INFO] Setting Theme
[15:02:17] [INFO] Checking for updates...
[15:02:18] [INFO] Building tree..
[15:02:18] [INFO] Working directory /home/archlinuxuser/JByteMod-Remastered
[15:02:18] [INFO] Built-in plugin registered: Bytecode Diff / Patch v1.0.0
[15:02:18] [ERROR] No plugin folder found!
Also as a side idea: A proper CLI system with a nice java library like https://github.com/kusoroadeolu/Clique would be nice and maybe editing bytecode and specific classes via CLI?