如何提取java中的.war文件?ZIP vs JAR

2022-08-31 17:05:10

我有一个Web程序,我希望用户能够导入文件,并且可以从文件中提取某些文件。我找到了两个类库:和.据我所知,WAR文件是一个特殊的JAR文件,它是一个特殊的ZIP文件。那么使用会更好吗?如果ZIP和JAR文件几乎相同,为什么需要两个不同的库?.war.warjava.util.zip.*java.util.jar.*java.util.jar


答案 1

WAR文件只是一个JAR文件,要提取它,只需发出以下jar命令 -

jar -xvf yourWARfileName.war

如果找不到jar命令,这有时会在Windows命令提示符下发生,然后指定完整路径,即在我的情况下,它是,

 c:\java\jdk-1.7.0\bin\jar -xvf my-file.war

答案 2

如果你看一下JarFile API,你会发现它是ZipFile类的一个子类。

特定于 jar 的类大多只是添加特定于 jar 的功能,例如对清单文件属性的直接支持等。

这是OOP“在行动”;由于 jar 文件是 zip 文件,因此 jar 类可以使用 zip 功能并提供额外的实用程序。


推荐