Coder Social home page Coder Social logo

graxcode / jbytemod-beta Goto Github PK

View Code? Open in Web Editor NEW
817.0 817.0 142.0 13.94 MB

Java bytecode editor

Home Page: https://grax.info

License: GNU General Public License v2.0

Java 98.27% HTML 1.73%
bytecode editor engineering java jbytedit jbytemod kotlin reverse reverse-engineering

jbytemod-beta's People

Contributors

2eui2ehi2e avatar axiometry avatar mrvoltz avatar skidunion avatar suboptimal avatar thistestuser avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

jbytemod-beta's Issues

New line

I tried to do a \n but it becomes a \\n in the String ๐Ÿค”
What should I do?

zh

Translations for Simplified Chinese (zh-cn).
But some strings are not found in the res file, such as "Search LDC" in the "Search" menu.
And all Chinese characters shows as messy code and cannot read. This is not only in strings I have translated, but also in
the "Load" dialog when the name of directories or files contains Chinese characters.
Please fix it. Thanks.

Icon Design

JByteMod currently doesn't have an icon, could somebody design one? (should be 32x32 / 16x16)

Failed loading class file - java.lang.IllegalArgumentException

Very strange compilled classes of this resource cannot be opened in jbytemod:
https://github.com/bristik/AdvancedCommandBlocker/releases

[11:57:38] [INFO] Reading Language XML..
[11:57:38] [INFO] Successfully loaded 87 local resources and 87 default resources
[11:57:38] [INFO] Unicode check finished!
[11:57:38] [INFO] Loading settings...
[11:57:38] [INFO] Setting default Look and Feel
[11:57:40] [INFO] 1 plugin(s) loaded!
[11:57:41] [INFO] 17 files to load!
java.lang.IllegalArgumentException
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:159)
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:142)
        at me.lpk.util.ASMUtils.getNode(ASMUtils.java:42)
        at me.grax.jbytemod.utils.task.LoadTask.readJar(LoadTask.java:99)
        at me.grax.jbytemod.utils.task.LoadTask.lambda$0(LoadTask.java:82)
        at java.util.Iterator.forEachRemaining(Unknown Source)
        at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Unknown Source)
        at java.util.stream.ReferencePipeline$Head.forEach(Unknown Source)
        at me.grax.jbytemod.utils.task.LoadTask.loadFiles(LoadTask.java:82)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:54)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:1)
        at javax.swing.SwingWorker$1.call(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at javax.swing.SwingWorker.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
[11:57:42] [ERROR] Failed loading class file ru/bristol/advancedcommandblocker/AdvancedCommandBlocker.class
java.lang.IllegalArgumentException
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:159)
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:142)
        at me.lpk.util.ASMUtils.getNode(ASMUtils.java:42)
        at me.grax.jbytemod.utils.task.LoadTask.readJar(LoadTask.java:99)
        at me.grax.jbytemod.utils.task.LoadTask.lambda$0(LoadTask.java:82)
        at java.util.Iterator.forEachRemaining(Unknown Source)
        at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Unknown Source)
        at java.util.stream.ReferencePipeline$Head.forEach(Unknown Source)
        at me.grax.jbytemod.utils.task.LoadTask.loadFiles(LoadTask.java:82)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:54)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:1)
        at javax.swing.SwingWorker$1.call(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at javax.swing.SwingWorker.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
[11:57:42] [ERROR] Failed loading class file ru/bristol/advancedcommandblocker/hooks/ChatHooks.class
java.lang.IllegalArgumentException
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:159)
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:142)
        at me.lpk.util.ASMUtils.getNode(ASMUtils.java:42)
        at me.grax.jbytemod.utils.task.LoadTask.readJar(LoadTask.java:99)
        at me.grax.jbytemod.utils.task.LoadTask.lambda$0(LoadTask.java:82)
        at java.util.Iterator.forEachRemaining(Unknown Source)
        at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Unknown Source)
        at java.util.stream.ReferencePipeline$Head.forEach(Unknown Source)
        at me.grax.jbytemod.utils.task.LoadTask.loadFiles(LoadTask.java:82)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:54)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:1)
        at javax.swing.SwingWorker$1.call(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at javax.swing.SwingWorker.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
[11:57:42] [ERROR] Failed loading class file ru/bristol/advancedcommandblocker/managers/BCommandManager.class
java.lang.IllegalArgumentException
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:159)
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:142)
        at me.lpk.util.ASMUtils.getNode(ASMUtils.java:42)
        at me.grax.jbytemod.utils.task.LoadTask.readJar(LoadTask.java:99)
        at me.grax.jbytemod.utils.task.LoadTask.lambda$0(LoadTask.java:82)
        at java.util.Iterator.forEachRemaining(Unknown Source)
        at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Unknown Source)
        at java.util.stream.ReferencePipeline$Head.forEach(Unknown Source)
        at me.grax.jbytemod.utils.task.LoadTask.loadFiles(LoadTask.java:82)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:54)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:1)
        at javax.swing.SwingWorker$1.call(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at javax.swing.SwingWorker.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
[11:57:42] [ERROR] Failed loading class file ru/bristol/advancedcommandblocker/managers/ConfigManager.class
java.lang.IllegalArgumentException
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:159)
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:142)
        at me.lpk.util.ASMUtils.getNode(ASMUtils.java:42)
        at me.grax.jbytemod.utils.task.LoadTask.readJar(LoadTask.java:99)
        at me.grax.jbytemod.utils.task.LoadTask.lambda$0(LoadTask.java:82)
        at java.util.Iterator.forEachRemaining(Unknown Source)
        at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Unknown Source)
        at java.util.stream.ReferencePipeline$Head.forEach(Unknown Source)
        at me.grax.jbytemod.utils.task.LoadTask.loadFiles(LoadTask.java:82)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:54)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:1)
        at javax.swing.SwingWorker$1.call(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at javax.swing.SwingWorker.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
[11:57:42] [ERROR] Failed loading class file ru/bristol/advancedcommandblocker/types/BType.class
java.lang.IllegalArgumentException
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:159)
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:142)
        at me.lpk.util.ASMUtils.getNode(ASMUtils.java:42)
        at me.grax.jbytemod.utils.task.LoadTask.readJar(LoadTask.java:99)
        at me.grax.jbytemod.utils.task.LoadTask.lambda$0(LoadTask.java:82)
        at java.util.Iterator.forEachRemaining(Unknown Source)
        at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Unknown Source)
        at java.util.stream.ReferencePipeline$Head.forEach(Unknown Source)
        at me.grax.jbytemod.utils.task.LoadTask.loadFiles(LoadTask.java:82)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:54)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:1)
        at javax.swing.SwingWorker$1.call(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at javax.swing.SwingWorker.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
[11:57:42] [ERROR] Failed loading class file ru/bristol/advancedcommandblocker/utils/Utils.class
java.lang.IllegalArgumentException
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:159)
        at org.objectweb.asm.ClassReader.<init>(ClassReader.java:142)
        at me.lpk.util.ASMUtils.getNode(ASMUtils.java:42)
        at me.grax.jbytemod.utils.task.LoadTask.readJar(LoadTask.java:99)
        at me.grax.jbytemod.utils.task.LoadTask.lambda$0(LoadTask.java:82)
        at java.util.Iterator.forEachRemaining(Unknown Source)
        at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Unknown Source)
        at java.util.stream.ReferencePipeline$Head.forEach(Unknown Source)
        at me.grax.jbytemod.utils.task.LoadTask.loadFiles(LoadTask.java:82)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:54)
        at me.grax.jbytemod.utils.task.LoadTask.doInBackground(LoadTask.java:1)
        at javax.swing.SwingWorker$1.call(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at javax.swing.SwingWorker.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
[11:57:42] [ERROR] Failed loading class file ru/bristol/advancedcommandblocker/variables/BCommand.class
[11:57:42] [INFO] Successfully loaded file!
[11:57:42] [INFO] Building tree..

Exception in thread "Thread-0" java.lang.NoClassDefFoundError: sun/misc/URLClassPath

Building tree..
Exception in thread "Thread-0" java.lang.NoClassDefFoundError: sun/misc/URLClassPath
        at com.strobel.assembler.metadata.ClasspathTypeLoader.<init>(ClasspathTypeLoader.java:66)
        at com.strobel.assembler.metadata.ClasspathTypeLoader.<init>(ClasspathTypeLoader.java:42)
        at com.strobel.assembler.metadata.MetadataSystem.<init>(MetadataSystem.java:48)
        at com.strobel.assembler.metadata.MetadataSystem.instance(MetadataSystem.java:40)
        at com.strobel.assembler.metadata.PrimitiveType.<init>(PrimitiveType.java:28)
        at com.strobel.assembler.metadata.BuiltinTypes.<clinit>(BuiltinTypes.java:40)
        at java.base/jdk.internal.misc.Unsafe.ensureClassInitialized0(Native Method)
        at java.base/jdk.internal.misc.Unsafe.ensureClassInitialized(Unknown Source)
        at jdk.unsupported/sun.misc.Unsafe.ensureClassInitialized(Unknown Source)
        at com.strobel.compilerservices.RuntimeHelpers.ensureClassInitialized(RuntimeHelpers.java:31)
        at com.strobel.assembler.metadata.MetadataSystem.<clinit>(MetadataSystem.java:147)
        at me.grax.jbytemod.decompiler.DecompileThread.decompile(DecompileThread.java:51)
        at me.grax.jbytemod.decompiler.DecompileThread.run(DecompileThread.java:39)
Caused by: java.lang.ClassNotFoundException: sun.misc.URLClassPath
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
        at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
        ... 13 more

This happened to me now, whereas before it wasn't doing any of that, don't know what's causing it, I think I got a Java update not long ago but not really sure.

Issue: Just loaded a Jar for decompilation, when I expanded a class and wanted to access such class for decompilation it threw that exception

Move source into dependencies

Single file cases are totally understandable, but entire packages that already have maven entries in the central repo shouldn't be here. If you need the source for reference you can have your IDE request the sources in it's maven config. This will greatly reduce compile time (took about 16 seconds on initial build, 7 seconds on future ones)

Incorrect work editing method Max Stack Size

After switching to a new asm library, the ability to edit Max Stack Size methods was lost. As soon as I returned the previous asm library (JByteMod-Beta-1.8.1), the editing worked again.

Sorry for my English. I from Belarus.

It would be nice to have a "Reload" button that reload files from the disk

when I recompile my binaries, I need to close JByteMod and reopen it again to see the changes
I thought that the reload button in decompiler tab is supposed to reload the file from the disk but it is not,
which made me think that it's just meant to re-decompile the file (or maybe it's a bug :3)
anyways it would be nice to make this button reload the file from the disk or to have another button for this purpose (possibly a global one not just for this tab)

Build system

Are there any plans for integrating a build system like Maven? It would be very nice to be able to be able to build this automatically. If not, is this something you are at least interested, and would accept pull requests for?

Attaching doesn't load attach provider

Clicking the "Attach to other process" button prompts the "Couldn't find any VMs" menu, providing PID results unable to attach due to provider not being instantiated.

JByteMod-Beta-master\target>"C:\Program Files\Java\jdk1.8.0_131\bin\java" -jar JByteMod-1.8.0.jar
[03:11:16] [INFO] Reading Language XML..
[03:11:16] [INFO] Successfully loaded 187 local resources and 187 default resources
[03:11:16] [INFO] Unicode check finished!
[03:11:16] [INFO] Loading settings...
[03:11:16] [INFO] Setting default Look and Feel
[03:11:17] [ERROR] No plugin folder found!
java.util.ServiceConfigurationError: com.sun.tools.attach.spi.AttachProvider: Provider sun.tools.attach.WindowsAttachProvider could not be instantiated

The classes are indeed in the classpath: (Picture from an agent looking for attach classes)
image

I suspect the reflection-based instantiation of the provider to be the cause. The code for this is around here.

Solution: Modify code to use proper attach API calls

String agentJarPath = "...";
List<VirtualMachineDescriptor> vms = VirtualMachine.list();

// for some value in the list... call method below

void attach(VirtualMachineDescriptor vmDesc) {
    VirtualMachine vm = VirtualMachine.attach(vmDesc);
    vm.loadAgent(agentJarPath);
    vm.detach();
}

add a thing

i think you should add a live compiler while editing
practically you click on the decompiler and you can edit things and not going on code

i dont think its possibile but hey.

Features request

Add back Source Name Renamer(Rename source to ClassXXX.java)
Add Source Name-->ClassName
Add back Source Name Search
Add back Class Name Search(Include repeat Class Name in different Package)
System.exit & new Socket & new URL & Runtime.exit Searcher
Add back try catch block Remover

Java Code โ€”โ€”> Java Byte Code Helper
for the First User to use Jbytemod easy
๏ผˆIf not ,when you want to edit

"
i=o=9;
while(o>0)
o--;
"
to:
"
i=9;
o=i-1;
while(o<0)
o--;
"
I you don't know how to,you need to try it in eclipse.And then get the bytecode to made it work.
๏ผ‰

replace every string (or long, int, etc) in jarfile

for example, i have a long valued "1508882400294L", and its in every class (if (new Date().after(new Date(1508882400294L)))), but i dont want to waste my time changing it using "go to declaration->edit ldc". so i want a feature "replace string", which is gonna replace every string (or other type) it finds in jarfile to given value.

keep up working on this programm, its really cool <3

New Features

Copied from old version: As a feature request, if possible, could you add the ability to insert a FrameNode? (f_new)

My own suggestion: Can you add the ability to insert (and edit) a label node?

Hel for novice

Hi,
how can I install jbytemode editor? (Sorry I am a novice...)

unmappable character for encoding error

mvn complains about the following error, can you fix them?

src/me/grax/jbytemod/ui/JAboutFrame.java:[46,26] error: unmappable character for encoding UTF-8
src/me/grax/jbytemod/ui/PageEndPanel.java:[39,24] error: unmappable character for encoding UTF-8

Krakatau: Cannot run program "py", Add libraries to Krakatau

So, this is what I see when I try to decompile any class with Krakatau:

[05:02:41] [INFO] Successfully created Krakatau temp folder
java.io.IOException: Cannot run program "py": CreateProcess error=2, The system cannot find the file specified
        at java.lang.ProcessBuilder.start(Unknown Source)
        at java.lang.Runtime.exec(Unknown Source)
        at java.lang.Runtime.exec(Unknown Source)
        at java.lang.Runtime.exec(Unknown Source)
        at me.grax.jbytemod.decompiler.KrakatauDecompiler.decompile(KrakatauDecompiler.java:45)
        at me.grax.jbytemod.decompiler.Decompiler.decompile(Decompiler.java:53)
        at me.grax.jbytemod.decompiler.Decompiler.run(Decompiler.java:41)
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified
        at java.lang.ProcessImpl.create(Native Method)
        at java.lang.ProcessImpl.<init>(Unknown Source)
        at java.lang.ProcessImpl.start(Unknown Source)
        ... 7 more

java.io.IOException: Cannot run program ""/usr/bin/python3""

This error is produced when trying to use krakatau for bytecode editing with the provided python directory: /usr/bin/python3

The provided directory has no quotes in it and there is a file called python3 in /usr/bin/.

java.io.IOException: Cannot run program ""/usr/bin/python3"": error=2, No such file or directory
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
	at java.lang.Runtime.exec(Runtime.java:620)
	at java.lang.Runtime.exec(Runtime.java:450)
	at java.lang.Runtime.exec(Runtime.java:347)
	at me.grax.jbytemod.decompiler.KrakatauDecompiler.decompile(KrakatauDecompiler.java:45)
	at me.grax.jbytemod.decompiler.Decompiler.decompile(Decompiler.java:53)
	at me.grax.jbytemod.decompiler.Decompiler.run(Decompiler.java:41)
Caused by: java.io.IOException: error=2, No such file or directory
	at java.lang.UNIXProcess.forkAndExec(Native Method)
	at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
	at java.lang.ProcessImpl.start(ProcessImpl.java:134)
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
	... 6 more


Please try setting the python path  

Feature Request: Copy, Paste, Move Up, Down on Key Pressed?

Is there a way to easily and quickly perform actions to bytecode that instead pressing the right click -> Move Up or down or edit, or w.e. maybe just use hotkeys for those actions?

like e.g.

Right Click -> Move Up = [PgUp]
Right Click -> Move Down = [PgDown]
Right Click -> Edit = [A Double Click on Item]
Right Click -> Duplicate = [CTRL + D]

bug report

java.io.FileNotFoundException: .\jbytemod.cfg (ๆ‹’็ป่ฎฟ้—ฎใ€‚)
	at java.base/java.io.FileOutputStream.open0(Native Method)
	at java.base/java.io.FileOutputStream.open(Unknown Source)
	at java.base/java.io.FileOutputStream.<init>(Unknown Source)
	at java.base/java.io.FileOutputStream.<init>(Unknown Source)
	at java.base/java.io.PrintWriter.<init>(Unknown Source)
	at me.grax.jbytemod.res.Options.lambda$save$1(Options.java:88)
	at java.base/java.lang.Thread.run(Unknown Source)


Please report exceptions on github.

https://github.com/GraxCode/JByteMod-Beta
  1. win10 x64
  2. jdk-9.0.4_windows-x64_bin
  3. JByteMod-Beta 1.7.1

Build failure

>mvn clean package

[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building JByteMod 1.5.1
[INFO] ------------------------------------------------------------------------
[WARNING] The POM for com.weblaf:weblaf:jar:1.2.9 is missing, no dependency information available
[WARNING] The POM for org.benf:reader:jar:1.2.5 is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.233 s
[INFO] Finished at: 2018-01-28T14:08:13-05:00
[INFO] Final Memory: 7M/245M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project JByteMod: Could not resolve dependencies for project GraxCode:JByteMod:jar:1.5.1: The following artifacts co
uld not be resolved: 
com.weblaf:weblaf:jar:1.2.9, 
org.benf:reader:jar:1.2.5: 

Cloning and running the specified command on the readme results in a build failure.

Search in decompiler

In prior version(0.x), I can use ctrl+f in decompiler
It is pretty useful
Is this feature removed?

AWT NPE

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
	at org.objectweb.asm.Type.getObjectType(Type.java:219)
	at org.objectweb.asm.tree.analysis.Analyzer.analyze(Analyzer.java:164)
	at me.grax.jbytemod.analysis.errors.ErrorAnalyzer.findErrors(ErrorAnalyzer.java:30)
	at me.grax.jbytemod.ui.lists.ErrorList.updateErrors(ErrorList.java:82)
	at me.grax.jbytemod.ui.lists.MyCodeList.loadInstructions(MyCodeList.java:539)
	at me.grax.jbytemod.JByteMod.selectMethod(JByteMod.java:319)
	at me.grax.jbytemod.ui.ClassTree$1.valueChanged(ClassTree.java:55)
	at javax.swing.JTree.fireValueChanged(JTree.java:2927)
	at javax.swing.JTree$TreeSelectionRedirector.valueChanged(JTree.java:3391)
	at javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(DefaultTreeSelectionModel.java:635)
	at javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(DefaultTreeSelectionModel.java:1093)
	at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(DefaultTreeSelectionModel.java:294)
	at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPath(DefaultTreeSelectionModel.java:188)
	at javax.swing.JTree.setSelectionPath(JTree.java:1634)
	at javax.swing.plaf.basic.BasicTreeUI.selectPathForEvent(BasicTreeUI.java:2393)
	at com.alee.laf.tree.WebTreeUI.selectPathForEvent(WebTreeUI.java:1025)
	at javax.swing.plaf.basic.BasicTreeUI$Handler.handleSelection(BasicTreeUI.java:3609)
	at javax.swing.plaf.basic.BasicTreeUI$Handler.mousePressed(BasicTreeUI.java:3548)
	at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:279)
	at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:279)
	at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:279)
	at java.awt.Component.processMouseEvent(Component.java:6530)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6298)
	at java.awt.Container.processEvent(Container.java:2237)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2295)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4889)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4523)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4467)
	at java.awt.Container.dispatchEventImpl(Container.java:2281)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

I don't know how to reproduce.

Java -jar JByteMod-1.8.1.jar Error:

Java version "1.8.0_131" running has the following problem
[19:53:51] [INFO] Reading Language XML..
[19:53:51] [INFO] Successfully loaded 85 local resources and 89 default resources
[19:53:51] [INFO] Updated WebLaF fonts for unicode support
[19:53:51] [INFO] Loading settings...
[19:53:51] [INFO] Setting default Look and Feel
[AWT-EventQueue-0] ERROR com.alee.utils.LafUtils - Unable to initialize L&F for class name: com.alee.laf.WebLookAndFeel
java.lang.ExceptionInInitializerError
at com.alee.utils.ImageUtils.createGrayscaleCopy(ImageUtils.java:1229)
at com.alee.utils.ImageUtils.createGrayscaleCopy(ImageUtils.java:1224)
at com.alee.utils.ImageUtils.createDisabledCopy(ImageUtils.java:1202)
at com.alee.utils.ImageUtils.createDisabledCopy(ImageUtils.java:1197)
at com.alee.laf.tree.WebTreeUI.(WebTreeUI.java:58)
at com.alee.laf.WebLookAndFeel.initComponentDefaults(WebLookAndFeel.java:581)
at javax.swing.plaf.basic.BasicLookAndFeel.getDefaults(BasicLookAndFeel.java:148)
at javax.swing.UIManager.setLookAndFeel(UIManager.java:539)
at javax.swing.UIManager.setLookAndFeel(UIManager.java:583)
at com.alee.utils.LafUtils.setupLookAndFeelSafely(LafUtils.java:1557)
at com.alee.utils.LafUtils.setupLookAndFeelSafely(LafUtils.java:1544)
at com.alee.laf.WebLookAndFeel.install(WebLookAndFeel.java:939)
at com.alee.laf.WebLookAndFeel.install(WebLookAndFeel.java:927)
at me.grax.jbytemod.utils.gui.LookUtils.setLAF(LookUtils.java:15)
at me.grax.jbytemod.JByteMod$1.run(JByteMod.java:170)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.lang.IllegalArgumentException: Can't load standard profile: GRAY.pf
at java.awt.color.ICC_Profile$2.run(ICC_Profile.java:935)
at java.awt.color.ICC_Profile$2.run(ICC_Profile.java:929)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.color.ICC_Profile.getStandardProfile(ICC_Profile.java:928)
at java.awt.color.ICC_Profile.getDeferredInstance(ICC_Profile.java:1075)
at java.awt.color.ICC_Profile.getInstance(ICC_Profile.java:895)
at java.awt.color.ColorSpace.getInstance(ColorSpace.java:333)
at com.alee.utils.ImageFilterUtils.(ImageFilterUtils.java:59)
... 29 more
java.lang.NullPointerException
at javax.swing.MultiUIDefaults.getUIError(MultiUIDefaults.java:130)
at javax.swing.UIDefaults.getUI(UIDefaults.java:760)
at javax.swing.UIManager.getUI(UIManager.java:1016)
at javax.swing.JPanel.updateUI(JPanel.java:126)
at javax.swing.JPanel.(JPanel.java:86)
at javax.swing.JPanel.(JPanel.java:109)
at javax.swing.JPanel.(JPanel.java:117)
at javax.swing.JRootPane.createGlassPane(JRootPane.java:546)
at javax.swing.JRootPane.(JRootPane.java:366)
at javax.swing.JFrame.createRootPane(JFrame.java:286)
at javax.swing.JFrame.frameInit(JFrame.java:267)
at javax.swing.JFrame.(JFrame.java:190)
at me.grax.jbytemod.JByteMod.(JByteMod.java:195)
at me.grax.jbytemod.JByteMod$1.run(JByteMod.java:173)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Startup Error

This happens at JByteMod 1.6.1.
Stacktrace:
PS C:\Users\Admin\Desktop\JByteMod-1.6.0> java -jar .\JByteMod-1.6.1.jar
java.lang.UnsatisfiedLinkError: no attach in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at me.grax.jbytemod.JByteMod.(JByteMod.java:102)
[15:46:03] [INFO] Reading Language XML..
Exception in thread "main" java.lang.NullPointerException
at me.grax.jbytemod.utils.ErrorDisplay.init(ErrorDisplay.java:51)
at me.grax.jbytemod.utils.ErrorDisplay.(ErrorDisplay.java:27)
at me.grax.jbytemod.res.LanguageRes.readXML(LanguageRes.java:49)
at me.grax.jbytemod.res.LanguageRes.(LanguageRes.java:24)
at me.grax.jbytemod.JByteMod.initialize(JByteMod.java:110)
at me.grax.jbytemod.JByteMod.main(JByteMod.java:149)
PS C:\Users\Admin\Desktop\JByteMod-1.6.0>

would be nice to provide more command line args

I like JByteMod so much, and I would be cool to just double-click a class file and have it opened with the class file loaded...
basically, just support a few more arguments, so instead of running JByteMod like this
java -jar target/JByteMod-1.5.1.jar [working dir]
it would be more flexible to run it like this:
java -jar target/JByteMod-1.5.1.jar [working dir] [*.jar or *.class to load]
or even better:
java -jar target/JByteMod-1.5.1.jar [working dir] [*.jar or *.class to load] [config file path] [plugin dir]

by the way, I have no idea what is that "working dir" (tried to pass the dir of my .class file here, but it wasn't loaded) so you can show some love and print a simple help when someone passes a -help argument (or an illegal argument)...

sorry to bother you and, hope that u keep up the great work!

Unable to Compile

I recently attempted to compile the source myself by importing it in my Eclipse installation and running a clean install target, however the following output was producted. I suspect the repositories in my Eclipse are missing or you are using custom-tailored dependencies. Either way, please navigate me on how to compile it. Very interesting project indeed, I wish you all the best.

a

[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building JByteMod 1.8.0
[INFO] ------------------------------------------------------------------------
[WARNING] The POM for org.bitbucket.mstrobel:procyon:jar:0.5.33 is missing, no dependency information available
[WARNING] The POM for com.weblaf:weblaf:jar:1.2.9 is missing, no dependency information available
[WARNING] The POM for org.benf:reader:jar:1.2.5 is missing, no dependency information available
[WARNING] The POM for com.sun:attach:jar:1.7 is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.187 s
[INFO] Finished at: 2018-05-05T11:06:37+02:00
[INFO] Final Memory: 15M/491M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project JByteMod: Could not resolve dependencies for project GraxCode:JByteMod:jar:1.8.0: The following artifacts could not be resolved: org.bitbucket.mstrobel:procyon:jar:0.5.33, com.weblaf:weblaf:jar:1.2.9, org.benf:reader:jar:1.2.5, com.sun:attach:jar:1.7: Failure to find org.bitbucket.mstrobel:procyon:jar:0.5.33 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.