.warファイルの読み方


17

.warファイルの内容を表示しようとしています。私は最初にアクセス権を設定しましたchmod 777:それを使用してアクセスしようとすると:

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

それは与えていることでcd: /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/: Not a directoryあり、私はこれ以上先に進むことができません。

この問題で誰かが私を助けることができますか?


5
chmod 777圧縮ファイルには使用しないでください。あなたはそれを読むために実行ビットを必要としません。安全644または640推奨されます。
Braiam

公式のJavaドキュメントを参照してください:docs.oracle.com/javase/tutorial/deployment/jar/view.html
slm

ある/usr/local/standalone/deployments/Sample.warディレクトリやファイルは?
jlliagre

回答:


21

.warファイルは圧縮されています。次のコマンドのいずれかを使用して、情報を抽出できます。

jar -xvf Sample.war
unzip Sample.war

その後、実行できるはずです cd /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/


3
jar -xvf *war現在のディレクトリに複数のwarファイルがある場合は機能しません。tar -xvfzまったく機能しません。gzip圧縮されたファイルと圧縮されたファイルを混同しています。
jlliagre

これは事実であり、複数の戦争で機能すると推測するつもりはありませんでした。変更しました
-JZeolla

1
jar -tvf提案されたjar -xvf方法ではなく、使用した方が良いと思います。そのため、ファイルは抽出されず(。汚染する)、リストされただけです。
Dror Cohen

8

.war ファイルは圧縮されたアーカイブです。

含まれているものをリストすることができます

jar tvf Sample.war

または

zipinfo Sample.war

アーカイブに保存されているファイルの内容を表示するには、まずどこかでそれを抽出する必要があります。

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

4

ファイルを抽出したくない場合vim filename.warは、ファイルの内容を読み取るために使用できます。ファイルを選択してEnterキーを押すと、ファイルのサブディレクトリを読み取ることができます。


これが機能するには、パッケージがunzipインストールされている必要があります。
-Thaoden


0

jarまたはunzipでそれらを抽出する以外に、Midnight Commander(mc)を使用してこれらのファイルに移動し、それらがディレクトリであるかのようにEnterキーを押します。

これがすぐに機能しない場合、mcのフレーバーは.warサフィックスを認識するように構成されていませんが、cd Sample.war#uzip(old mc)またはcd Sample.war / uzipのいずれかを入力することにより、この機能を引き続き使用できます。 //(Debian不安定版ではmc)Enterキーを押します。追加の利点として、Escapeキーを押してからEnterキーを押します(一部の端末ではAlt-Enterキーも使用できますが、ポータブルではないため、これに依存しません)。現在のファイル名をコマンドラインに挿入しますが、Backspaceキーも押す必要があります。スペースが追加され、#uzipまたは/ uzip://がファイル名の直後に続く必要があります。

これは、mc VFS(仮想ファイルシステム)として知られています。

ここではunzip / fastjar / jarの回答を繰り返しませんが、それらも正しいです。


0

UNIXコマンドが機能しない場合は、ファイルをローカルマシンにftpします。

.jarまたは.warまたは.ear任意のアーカイブファイルには、以下の手順で7-ジップで開くことができます-

  1. アーカイブファイルを右クリックします
  2. 7-Zip
  3. アーカイブを開く

すべてのアーカイブファイルの内容を表示できるはずです。ここでフォルダ/ファイルを参照し、右クリック->ファイルを編集->ファイルを保存します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.