如何读取 .war 文件?

use*_*325 17 compression files

我正在尝试查看 .war 文件的内容。chmod 777当我尝试使用以下方法访问它时,我首先确实设置了它的权限:

cd /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/
Run Code Online (Sandbox Code Playgroud)

它正在给予cd: /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/: Not a directory,我无法进一步进行。

有人可以帮助我解决这个问题吗?

JZe*_*lla 21

.war 文件被打包。您可以使用以下任一命令提取信息:

jar -xvf Sample.war
unzip Sample.war
Run Code Online (Sandbox Code Playgroud)

然后你应该能够运行 cd /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/

  • 如果当前目录中有多个 war 文件,`jar -xvf *war` 将不起作用。`tar -xvfz` 根本不起作用,你混淆了 gzipped 文件和压缩文件。 (3认同)

jll*_*gre 8

.war 文件是压缩档案。

您可以列出它们包含的内容

jar tvf Sample.war
Run Code Online (Sandbox Code Playgroud)

或者

zipinfo Sample.war
Run Code Online (Sandbox Code Playgroud)

如果您想查看存储在存档中的文件的内容,您需要先将其解压缩到某处:

mkdir /tmp/foo
cd /tmp/foo
unzip /usr/local/standalone/deployments/Sample.war
ls -l WEB-INF/classes/
Run Code Online (Sandbox Code Playgroud)


小智 5

如果您不想解压缩文件,您可以使用它vim filename.war来读取文件的内容。您可以通过选择文件并按 Enter 来读取文件的子目录。