I have some .class files that I need to convert to .java so I did:
javap -c ClassName.class
and all the time I have the same error
ERROR:Could not find ClassName.class
Do you guys have any idea of what might be the cause? I did man javap and as far as I know the syntax is correct. If there is another way to convert it to a .java file, I am more than willing to try. Any idea is greatly appreciated?
解决方案
Invoking javap to read the bytecode
The javap command takes class-names without the .class extension. Try
javap -c ClassName
Converting .class files back to .java files
javap will however not give you the implementations of the methods in java-syntax. It will at most give it to you in JVM bytecode format.
To actually decompile (i.e., do the reverse of javac) you will have to use proper decompiler. See for instance the following related question: