4

Я слышал, что они одинаковы, но я хотел бы знать, всегда ли одинаковое сжатие. Могу ли я всегда переименовывать файлы .zip в .war и наоборот?

2 ответа2

8

Если вы имеете в виду это, то, согласно вики-странице, формат .war такой же, как и формат .jar. Файлы .jar - это просто файлы .zip, которые содержат скомпилированный код Java, предназначенный для использования в качестве библиотеки или исполняемого файла. Таким образом, ответ будет « нет», технической разницы нет; но файлы .jar должны использоваться только для того, для чего они предназначены, а не как универсальные архивы.

Если вы имеете в виду это, то есть небольшая разница: этот формат .war является файлом gzipped-tar (.tar.gz), опять-таки предназначенным для хранения определенных данных (веб-страниц). Gzip и Zip оба используют один и тот же алгоритм сжатия; однако:

Gzip не следует путать с форматом ZIP-архива, который также использует [алгоритм сжатия DEFLATE]. Формат ZIP может содержать коллекции файлов без внешнего архиватора, но он менее компактен, чем сжатые архивы, содержащие те же данные, поскольку он сжимает файлы по отдельности и не может использовать избыточность между файлами.

В обоих случаях вы должны использовать расширение .war только для тех целей, для которых оно предназначено.

3

ZIP-файлы могут содержать любые типы файлов и папок.

Файлы WAR (архивы веб-приложений Java) основаны на ZIP, но имеют определенную структуру папок и требования к некоторым файлам в них (например, некоторые материалы должны находиться в каталоге WEB-INF ).

Так что да, вы можете переименовать файл .war в .zip, чтобы просмотреть его содержимое, или распаковать его, используя инструмент, который не знает об этой взаимосвязи между форматом файла. Но не любой файл .zip создаст работающее веб-приложение - вам нужно быть осторожным при создании структуры файлов и папок, которую вы объединяете.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .