Ho un programma Web in cui desidero che l'utente sia in grado di importare un file .war
e di estrarre determinati file dal file .war
. Ho trovato due librerie di classi: java.util.zip.*
e java.util.jar.*
. Da quello che ho capito, un file WAR è uno speciale file JAR che è uno speciale file ZIP. Quindi sarebbe meglio usare java.util.jar
? Se i file ZIP e JAR sono più o meno gli stessi perché c'è bisogno di due diverse librerie?Come estrarre i file .war in java? ZIP vs JAR
risposta
Se si guarda l'API JarFile, si vedrà che si tratta di una sottoclasse della classe ZipFile.
Le classi specifiche del jar aggiungono per lo più solo funzionalità specifiche per jar, come il supporto diretto per gli attributi di file manifest e così via.
È OOP "in azione"; poiché i file jar sono file zip, le classi jar possono utilizzare la funzionalità zip e fornire ulteriore utilità.
Sono apprezzati i downvotes su risposte corrette e accettate. –
Come hai detto tu, un barattolo è un file zip (non un tipo speciale, ma solo un semplice vecchio zip), quindi entrambe le librerie potrebbero essere fatte funzionare. Il ragionamento è che la persona media, vedendo un'estensione * .zip, tende a decomprimerlo. Dal momento che il server dell'app lo vuole decompresso, un semplice rinominare impedisce alle persone di decomprimerlo semplicemente per abitudine. Allo stesso modo, il file * .war dovrebbe anche rimanere non compresso.
java.util.jar in pratica aggiunge semplicemente funzionalità aggiuntive a java.util.zip con un sovraccarico extra. Lascia che il java.util.jar sia un aiuto nel postare, ecc ... e usalo.
Classe Jar/pacchetto è per meccanismi di file Jar specifici in cui è presente un manifest che viene utilizzato dai file Jar in alcuni casi.
La classe/pacchetto di file Zip gestisce qualsiasi file compresso che include file Jar, che è un tipo di file compresso.
Le classi Jar estendono quindi le classi di pacchetti Zip.
file WAR è solo un file JAR, per estrarlo, proprio problema seguente comando jar -
jar -xvf yourWARfileName.war
Se il comando jar non viene trovato, che a volte accade nel prompt dei comandi di Windows, quindi specificare il percorso completo vale a dire nel mio caso lo è,
c:\java\jdk-1.7.0\bin\jar -xvf my-file.war
Ho usato questo comando e file .war estrapolati .. ma tutto questo va nella cartella bin .. puoi incollare il comando per scegliere l'estrazione della posizione –
http://stackoverflow.com/questions/15830952/extracting-jar-to-specified -directory –
In Java, ha chiesto l'OP. –
basta rinominare il .war
in .jar
e decomprimerlo utilizzando Winrar
(o qualsiasi altro gestore di archivi).
Se si utilizza Linux o Ubuntu di quanto sia possibile estrarre direttamente i dati dal file .war
.
Un file war
è solo un file jar
, per estrarlo, proprio problema seguente comando utilizzando il programma jar
:
jar -xvf yourWARfileName.war
- 1. Java war vs. jar: qual è la differenza?
- 2. Come escludere i jar da aggiungere nel file WAR
- 3. API Windows per estrarre i file zip?
- 4. Estrarre un file zip in memoria?
- 5. Differenza binaria nel file Zip/Jar
- 6. Come estrarre file zip in modo ricorsivo in Python
- 7. Come estrarre le classi dal file .jar?
- 8. Maven - Genera Jar e War
- 9. Quando JVM di Java decomprime i file jar?
- 10. Estrarre un file da una stringa ZIP
- 11. Come cercare un file .zip in IntelliJ (o .jar, ecc.)
- 12. Distribuire WAR o "JAR grasso"?
- 13. Eclipse che esporta JAR in WAR
- 14. Nexus è il posto giusto per archiviare i rilasci (jar-with-dependencies, file WAR, tar.gz, zip, ecc.)?
- 15. Estrarre il file zip nella cartella locale
- 16. Aggiunta di WAR al classpath di Java
- 17. Java/zip: perché i file .jar sono creati in modo non deterministico?
- 18. Crea Zip file in Windows ed estrarre Zip File In Linux
- 19. come estrarre i file da un grande (30Gb +) file zip sul server Linux
- 20. Come decomprimere i file ricorsivamente in Java?
- 21. Come creare un file zip in Java
- 22. Java util zip crea file zip "corrotti"
- 23. Come utilizzare DotNetZip per estrarre il file XML da zip
- 24. Come utilizzare i file .jar in NetBeans?
- 25. Che cosa si intende per MANIFEST.MF in WAR/JAR/EAR?
- 26. jar "Selenium server standalone" vs jar "selenium java"
- 27. Lettura di un file zip all'interno di un file jar
- 28. Come estrarre le cartelle compresse in java?
- 29. Come estrarre i file tar.xz in Linux?
- 30. Come fare bootRepackage dipende da jar non war quando si usa Gradle War Plugin
Che cosa farete con i file all'interno del file di guerra? –