Perché convertire JAR in CLASS?
Un JAR (Java Archive) è un contenitore ZIP che ospita file .class compilati organizzati per nome del pacchetto Java. Gli sviluppatori estraggono le singole classi per ispezionare il bytecode, correggere un singolo file senza riconfezionare l'intero archivio, aggiungerli manualmente a un classpath o darli in pasto a un decompiler per verificare quale versione di una libreria possiedono effettivamente.
Come convertire JAR in CLASS
7-Zip FREE
Fai clic con il tasto destro sul file .jar e scegli 7-Zip > Apri archivio, quindi estrai i file .class necessari dalle sottodirectory dei pacchetti.
jar (JDK) FREE
Esegui jar xf app.jar in un terminale per estrarre tutto il contenuto; i file .class appariranno nelle loro sottodirectory del pacchetto Java.
Informazioni su questi formati
Un file JAR è un Java Archive - un pacchetto ZIP di bytecode Java compilato (file .class), risorse e un manifesto. Per eseguire un JAR eseguibile è necessario che Java sia installato…
Apri dettagli .JAR →Un file CLASS è bytecode Java compilato - l'output prodotto da javac a partire da un file sorgente .java. Per eseguirlo è necessario avere Java (un JDK) installato, quindi usare il comando…
Apri dettagli .CLASS →Qualità e a cosa prestare attenzione
- Un
.jarè un archivio ZIP standard: l'estensione è l'unica differenza; rinominandolo in.zipè possibile aprirlo con qualsiasi strumento di archiviazione senza software aggiuntivo. - I file .class contengono bytecode Java compilato, non sorgente leggibile dall'uomo; per leggere la logica, passa i file attraverso un decompiler come JD-GUI o CFR: l'output decompilato è un'approssimazione.
- La struttura delle cartelle interne rispecchia i nomi dei pacchetti Java (ad es.
com/example/App.class); i file estratti finiscono nelle sottodirectory del loro pacchetto.
Domande frequenti
Devo installare qualcosa per estrarre i file .class da un JAR?
.jar in .zip e aprilo in Esplora file di Windows o nel Finder di macOS; i file .class sono all'interno e possono essere copiati direttamente.Posso leggere la logica all'interno di un file .class?
.class sono bytecode compilato; eseguili tramite JD-GUI o CFR per ottenere un codice sorgente Java approssimativo.Estrarre file .class è la stessa cosa che decompilare?
.class grezzi; la decompilazione è un passaggio ulteriore che tenta di ricostruire il sorgente Java leggibile da quei file.