Sto cercando di visualizzare il contenuto di un file .war. Per prima cosa ho impostato i suoi permessi con chmod 777 poi quando provo ad accedervi usando:

cd /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/ 

Sta dando cd: /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/: Not a directory e non sono in grado di procedere oltre.

Qualcuno può aiutarmi in questo problema?

Commenti

  • Non ' t utilizzare chmod 777 su un file compresso. Non ' non è necessario un bit di esecuzione per leggerlo. Si consiglia un 644 o 640 sicuro.
  • Consulta i documenti Java ufficiali: docs.oracle.com/javase/tutorial/deployment/jar/view.html
  • È /usr/local/standalone/deployments/Sample.war una directory o un file?

Risposta

I file .war sono compressi. Puoi estrarre le informazioni utilizzando uno dei seguenti comandi:

jar -xvf Sample.war unzip Sample.war 

Dovresti quindi essere in grado di eseguire cd /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/

Commenti

  • jar -xvf *war ha vinto ' t funziona se cè più di un file war nella directory corrente. tar -xvfz non ' funziona, stai confondendo file compressi con gzip e file compressi.
  • Questo è vero, Non volevo ' intendere dedurre che avrebbe funzionato con più guerre, ma solo che potresti usare quel comando alla lettera per qualsiasi guerra. ' lho cambiato
  • Penso che ' sia meglio usare jar -tvf e non il modo jar -xvf proposto. Quindi i file non sono ' t estratti (e contaminano il tuo.) Ma solo elencati.

Rispondi

.war i file sono archivi compressi.

Puoi elencare il loro contenuto con

jar tvf Sample.war 

o

zipinfo Sample.war 

Se vuoi vedere il contenuto dei file memorizzati in un archivio, devi prima estrarlo da qualche parte :

mkdir /tmp/foo cd /tmp/foo unzip /usr/local/standalone/deployments/Sample.war ls -l WEB-INF/classes/ 

Risposta

Se non vuoi estrarre il file puoi utilizzare vim filename.war per leggere il contenuto del file. Puoi leggere le sottodirectory dei file selezionandole e premendo invio.

Commenti

  • Affinché funzioni, è necessario che il pacchetto unzip sia installato.

Risposta

Per prima cosa devi estrarre il file war jar xvf Sample.war. Quindi puoi entrare nel file war.

Risposta

Se i comandi unix non funzionano, eseguire il ftp del file sulla macchina locale.

.jar o .war o .ear qualsiasi file di archivio può essere aperto in 7-Zip seguendo i passaggi seguenti –

  1. Fai clic con il pulsante destro del mouse sul file di archivio
  2. 7-Zip
  3. Apri archivio

Dovresti essere in grado di vedere tutto il file di archivio Contenuti. Ora sfoglia la cartella / file e poi fai clic con il tasto destro -> modifica il file -> salva il file.

Rispondi

Oltre a estrarli con jar o unzip, puoi anche usare Midnight Commander (mc) e navigare verso questi file e premi Invio su di esse come se fossero directory.

Se questo non funziona immediatamente, il tuo tipo di mc non è configurato per conoscere il suffisso .war, ma puoi comunque usare questa funzione digitando uno cd Sample.war # uzip (vecchio mc) o cd Sample.war / uzip: // (mc in Debian unstable) e premendo Invio. Come ulteriore vantaggio, premendo Escape poi Invio (in alcuni terminali, anche Alt-Invio ma questo non è portabile quindi non dipendere da esso) inserisce il nome del file corrente nella riga di comando, ma dovrai anche premere Backspace perché aggiunge uno spazio, e #uzip o / uzip: // deve seguire immediatamente il nomefile.

Questo è noto come mc VFS (file system virtuale).

Non ripeterò qui le risposte di unzip / fastjar / jar, ma sono anche corrette.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *