.war 和 .zip 文件格式有什么区别?

Tom*_*Tom 6 zip

我听说它们是一样的,但我想知道压缩是否总是相同的。我可以始终将 .zip 文件重命名为 .war,反之亦然吗?

Blu*_*eft 9

如果您是这个意思,那么,根据维基页面,.war 格式与 .jar 格式相同。.jar 文件只是 .zip 文件,其中包含已编译的 Java 代码,旨在用作库或可执行文件。所以答案是否定的,没有技术差异;但是 .jar 文件应该只用于它们的用途,而不是用作通用档案。

如果你是这个意思,那么有一点点区别:这个 .war 格式是一个 gzipped-tar (.tar.gz) 文件,同样是为了保存特定的数据(网页)。Gzip 和 Zip 都使用相同的压缩算法;然而

不要将 Gzip 与 ZIP 存档格式混淆,后者也使用 [DEFLATE 压缩算法]。ZIP 格式可以在没有外部存档器的情况下保存文件集合,但不如保存相同数据的压缩 tarball 紧凑,因为它单独压缩文件并且不能利用文件之间的冗余。

在这两种情况下,您应该只将 .war 扩展名用于其预期的特定目的。


Dan*_*eck 5

ZIP 文件可以包含任何类型的文件和文件夹结构。

\n\n

WAR 文件(Java Web 应用程序档案)基于 ZIP,但具有定义的文件夹结构和对其中某些文件的要求(例如,某些内容需要位于目录中WEB-INF)。

\n\n

所以,是的,您可以将 .war 文件重命名为 .zip 以查看其内容,或使用不了解文件格式之间关系的工具将其解压缩。但并非任何 .zip 文件都能创建一个有效的 Web 应用程序 \xe2\x80\x94,您在创建要捆绑的文件和文件夹结构时必须小心。

\n

  • @Daniel Beck:通常我的编辑会修复主要问题。这是一个例外,我纠正了一个小错误。我不知道它会造成声誉问题,我的目的是保持内容的高质量。我会尽力记住不要编辑您的帖子,但我也不想发现自己处于“如履薄冰”的境地,不得不记住谁的帖子不要编辑,所以如果我忘记了,请提前原谅我(该网站似乎没有提供任何在用户旁边添加自定义注释的系统,否则我可以添加这样的注释)。 (2认同)