2012-02-01 18 views
8

Tengo el archivo .jar. Intenté ejecutar el comando jar xf my.jar no dio nada. Intenté usar JD GUI, pero me dio este mensaje: Invalid input file '/home/hey/Desktop/my.jar'.¿Cómo extraer clases del archivo .jar?

¿Significa que no puedo extraer las clases de este archivo .jar?

+0

Intenté funcionar tarro de mando JD-GUI -xvf tools.jar, funciona. Creo que my.jar está dañado o no está almacenado en formato de archivo jar. – Alanmars

Respuesta

9

Puede abrir el archivo jar con winrar, esto mostrará todos los archivos de clase, a partir de ahí, puede arrastrarlos a todos en JD-GUI y descompilarlos todos.

+0

Archivo: /home/hey/Desktop/my.jar [/home/hey/Desktop/my.jar] Firma del final del directorio central no encontrada. O bien este archivo no es un archivo zip, o constituye un disco de un archivo de varias partes. En el último caso , el directorio central y el comentario del archivo zip se encontrarán en el último disco (s) de este archivo. nota: /home/hey/Desktop/my.jar puede ser un archivo ejecutable, no un archivo zipinfo: no se puede encontrar el directorio de archivos zip en /home/hey/Desktop/my.jar o /home/hey/Desktop /my.jar.zip, y no se puede encontrar /home/hey/Desktop/my.jar.ZIP, punto. –

+0

Haga clic con el botón derecho en el contenedor y seleccione 'Abrir con ...' desde allí, puede seleccionar Winrar desde sus Archivos de programa. –

10

Si desea extraer un archivo desde el archivo JAR, utilice el siguiente comando:

jar xf jar-filename archived-files

La opción x indica que deseamos extraer los archivos, la opción f indica desde un archivo jar, jar-filename es el nombre del archivo jar para extraer y t él archived-files son los archivos para extraer.

También puede extraer todos los archivos simplemente no especificando los archivos que desea extraer:

jar xf project.jar

Nota: Si no es accesible hacer como que @Legend dijo, Abrir conWinRAR comprobar el tiempo es un adecuado .jar o .zip archivo. Si no se abre con winrar, puede haber un problema en .jar/.zip.

2

para los usuarios de Linux

unzip your.jar 
5

¿Cómo creó el archivo .jar?

acabo de utilizar Dex2Jar en MAC OSX como tal -

sudo sh ~/Downloads/dex2jar-2.0/d2j-dex2jar.sh ~/mobile/pjr.mob.android/obj/Debug/android/bin/classes.dex --force 

y el archivo resultante tenía un problema de permisos, así que cuando fui a abrirlo con JD GUI le dieron el "FileLoader de entrada no válido:" error que mencionaste anteriormente.

Si lo hace un -

sudo chmod + xr ~/Descargas/dex2jar-2.0/clases-dex2jar.jar

A continuación, será capaz de abrirlo en JD interfaz gráfica de usuario.

+0

No creo que haya un archivo llamado "classes-dex2jar.jar" en esa carpeta. ¿Cómo lo conseguiste? –

+0

Mire la salida del comando anterior cuando lo ejecuta en su máquina, mi archivo .dex fuente es "classes.dex" que se convierte automáticamente en ./classes-dex2jar.jar (en el directorio ejecutó el comando anterior). – WickedW

0

¡La respuesta de WickedW es correcta!

sudo chmod +xr *.jar 

continuación, se puede abrir el frasco con

Cuestiones relacionadas