2012-02-01 18 views
8

Ho il file .jar. Ho provato a eseguire il comando jar xf my.jar non ha dato nulla. Ho provato a utilizzare JD GUI, ma mi ha dato questo messaggio: File di input non valido '/home/hey/Desktop/my.jar'.Come estrarre le classi dal file .jar?

Significa che non riesco a estrarre le classi da questo file .jar?

+0

ho provato a fare funzionare vaso comando -xvf tools.jar, funziona. Penso che il tuo my.jar sia corrotto o che non sia memorizzato nel formato di file jar. – Alanmars

risposta

9

È possibile aprire il file jar con winrar, questo mostrerà tutti i file di classe all'interno, da lì, tutti loro è possibile trascinare in JD-GUI e tutti decompilare.

+0

Archivio: /home/hey/Desktop/my.jar [/home/hey/Desktop/my.jar] Firma end-of-central-directory non trovata. O questo file non è un file zip, o costituisce un disco di un archivio multiparte. In quest'ultimo caso la directory e file zip centrale commento verrà trovato sul l'ultimo disco (s) di questo archivio. nota: /home/hey/Desktop/my.jar può essere un semplice eseguibile, non un archivio zip : impossibile trovare la directory zipfile in uno /home/hey/Desktop/my.jar o /home/hey/desktop /my.jar.zip, e non riesco a trovare /home/hey/Desktop/my.jar.ZIP, punto. –

+0

Fai clic con il pulsante destro del mouse sulla barra e seleziona "Apri con ..." da lì, puoi selezionare Winrar dai tuoi file di programma. –

10

Se si desidera estrarre un file dal file Jar, utilizzare il seguente comando:

jar xf jar-filename archived-files

L'opzione x indica che vogliamo estrarre i file, l'opzione f indica da un file jar, il jar-filename è il nome file del file jar da cui estrarre e t he archived-files sono i file da estrarre.

Ci può anche estrarre tutti i file, semplicemente non specificare quali file da estrarre:

jar xf project.jar

Nota: Se non è accessibile fare come come @Legend detto, Apri conWinRaR controlla il tempo è corretto .jar o .zip file. Se non si apre con winrar, potrebbe esserci un problema in .jar/.zip.

2

per gli utenti Linux

unzip your.jar 
5

Come hai creato il file .jar?

ho appena usato Dex2Jar su MAC OSX in questo modo -

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

e il file risultante ha avuto un problema di autorizzazioni, in modo da quando sono andato ad aprire con JD GUI ha dato la "FileLoader di input non valido:" errore che hai menzionato sopra.

Se fate una -

sudo chmod + xr ~/Downloads/dex2jar-2.0/classes-dex2jar.jar

Sarà quindi in grado di aprirlo in JD GUI.

+0

Non penso che ci sia un file chiamato "classes-dex2jar.jar" in quella cartella. Come l'hai capito? –

+0

Guardate l'output del comando precedente quando si esegue sulla vostra macchina, il mio file sorgente .dex è "classes.dex", che diventa automaticamente ./classes-dex2jar.jar (nella directory è stato eseguito il comando precedente). – WickedW

0

La risposta di WickedW è corretta!

sudo chmod +xr *.jar 

allora è possibile aprire il vaso con JD-GUI

Problemi correlati