tipos sirve que para leer crear como clase archivos archivo abrir java windows class applet
http://code.google.com/p/innlab/downloads/detail?name=jd-gui-0.3.3.windows.zip&can=2&q=

leer - para que sirve la clase file en java



¿Cómo puedo abrir archivos Java.class de una manera legible para los humanos? (17)

Como lo señaló @MichaelMyers, use

javap -c <name of java class file>

para obtener el código ensamblador JVM. También puede redirigir la salida a un archivo de texto para una mejor visibilidad.

javap -c <name of java class file> > decompiled.txt

Estoy tratando de descubrir qué hace un archivo de clase de un applet de Java bajo el capó. Abrirlo con el Bloc de notas o el Panel de texto solo muestra un montón de gobbledy-gook.

¿Hay alguna manera de rebatirlo de nuevo en un formato algo legible para que pueda intentar descubrir qué está haciendo?

  • Entorno == Windows w / VS 2008 instalado.

Como se sugiere, puede usar JAD para descompilarlo y ver los archivos. Para facilitar la lectura, puede usar el plugin JADclipse para eclipse para integrar JAD directamente en eclipse o usar DJ Java Decompiler, que es mucho más fácil de usar que la línea de comando JAD.


Eso es código compilado, necesitarás usar un descompilador como JAD: Jad


JAD es una excelente opción si quieres un código Java legible como resultado. Sin embargo, si realmente quieres profundizar en las .class internas del formato de archivo .class , vas a querer javap . Se incluye con el JDK y le permite "descompilar" el bytecode hexadecimal en ASCII legible. El lenguaje que produce sigue siendo bytecode (nada parecido a Java), pero es bastante legible y extremadamente instructivo.

Además, si realmente lo desea, puede abrir cualquier archivo .class en un editor hexadecimal y leer directamente el bytecode. El resultado es idéntico al uso de javap .


JAD y / o JADclipse Eclipse plugin, seguro.


Necesitas usar un descompilador. Otros han sugerido JAD, hay otras opciones, JAD es el mejor.

Me haré eco de los comentarios que puede perder un poco en comparación con el código fuente original. Va a ser especialmente divertido si el código usa genéricos, debido a borrado.


No hay necesidad de descompilar Applet.class. El código fuente de las clases API públicas de Java viene con el JDK (si elige instalarlo) y es mejor legible que el bytecode decompilado. Puede encontrar comprimido en src.zip (ubicado en su carpeta de instalación JDK).


Si desea un descompilador de Java, puede usar la herramienta de línea de comandos javap para hacerlo. Además, Java Decompiler HOW-TO describe cómo puede descompilar un archivo de clase.


Si el archivo de clase que desea examinar es de código abierto, no debe descompilarlo, sino que debe adjuntar los archivos de origen directamente a su IDE. De esta forma, puedes ver el código de alguna clase de biblioteca como si fuera tuyo


Si no te importa leer bytecode, javap debería funcionar bien. Es parte de la instalación estándar de JDK.

Usage: javap <options> <classes>... where options include: -c Disassemble the code -classpath <pathlist> Specify where to find user class files -extdirs <dirs> Override location of installed extensions -help Print this usage message -J<flag> Pass <flag> directly to the runtime system -l Print line number and local variable tables -public Show only public classes and members -protected Show protected/public classes and members -package Show package/protected/public classes and members (default) -private Show all classes and members -s Print internal type signatures -bootclasspath <pathlist> Override location of class files loaded by the bootstrap class loader -verbose Print stack size, number of locals and args for methods If verifying, print reasons for failure


Usar Jad para descompilarlo es probablemente tu mejor opción. A menos que el código haya sido ofuscado, producirá un resultado aceptable.


cpuguru, si su applet ha sido compilado con javac 1.3 (o menos), su mejor opción es usar Jad.

Desafortunadamente, el último JDK soportado por JAD 1.5.8 (14 de abril de 2001) es JDK 1.3.

Si su applet ha sido compilado con un compilador más reciente, puede probar JD-GUI : este decompilador está en desarrollo, sin embargo, genera fuentes correctas de Java, la mayoría de las veces, para las clases compiladas con los JDK 1.4, 1.5 o 1.6.

DarenW, gracias por tu publicación. JD-GUI aún no es el mejor decompilador ... pero estoy trabajando en :)



lo que estás buscando es un compilador de Java. Recomiendo JAD Jad Es gratis para uso no comercial y hace el trabajo.

Nota: esto no hará que el código sea exactamente igual a lo que se escribió. es decir, perderás comentarios y posiblemente nombres de variables, por lo que será un poco más difícil que solo leer el código fuente normal. Si el desarrollador es realmente reservado, también habrá ofuscado su código, lo que lo hará aún más difícil de leer.



jd-gui es el mejor decompilador en este momento. puede manejar características más nuevas en Java, en comparación con el JAD polvoriento.