Что такое формат файла EAR?
Файл .ear является единицей упаковки верхнего уровня для корпоративных Java-приложений, определенной спецификацией J2EE (ныне Jakarta EE) с момента ее выпуска 1.2 в декабре 1999 года. Структурно это ZIP-архив, имеющий «магические байты» PK 50 4B 03 04, который объединяет веб-модули (.war), модули EJB (.jar), модули адаптеров ресурсов (.rar) и JAR-файлы клиентских приложений в один артефакт для развертывания.
Обязательный дескриптор развертывания META-INF/application.xml идентифицирует архив как EAR и объявляет, какие подмодули он содержит. Сжатие для каждой записи использует DEFLATE; отдельные записи также могут храниться без сжатия. Поскольку контейнером является стандартный ZIP, переименование файла в .zip и его открытие любым менеджером архивов позволяет увидеть всю внутреннюю структуру.
Файлы EAR развертываются на полнофункциональных серверах приложений Jakarta EE - наиболее распространенными целями являются WildFly (JBoss), Eclipse GlassFish, IBM WebSphere и Oracle WebLogic. Современные микросервисные архитектуры предпочитают исполняемые fat-JAR файлы или образы контейнеров вместо EAR, но развертывание EAR остается стандартом для рабочих нагрузок Jakarta EE и крупных устаревших приложений Java EE. Базовая структура на основе ZIP остается стабильной со времен оригинальной спецификации J2EE 1.2; версионность выражается через объявления пространств имен в application.xml.
Безопасность и защита
РИСК: MEDIUMEAR содержит исполняемый серверный код, который запускается на сервере приложений с привилегиями этого сервера. Развертывайте только EAR из доверенных источников. Вредоносный EAR может содержать веб-шеллы, бэкдоры в EJB или эксплуатировать уязвимости в связанных библиотеках. Проверяйте содержимое с помощью 7-Zip перед развертыванием недоверенного EAR. Своевременно обновляйте сервер приложений и используемые библиотеки.
Детали формата
в двух словах- Аудиофайл Audacity - Некоторые старые сессии Audacity могли экспортироваться с расширением .ear; это совершенно не связано с Java EE.
Программы, открывающие файлы EAR
Технические подробности
глубокая спецификация| Формат контейнера | ZIP-архив (те же магические байты `50 4B 03 04`, что и у `.zip` и `.jar`) |
| Порядок байтов | Little-endian (формат ZIP) |
| Сжатие | DEFLATE для каждой записи; также разрешено STORED для отдельных записей |
| Обязательный дескриптор | `META-INF/application.xml` - идентифицирует EAR и объявляет его подмодули |
| Типы подмодулей | `.war` (веб), EJB `.jar` (корпоративные бины), `.rar` (адаптеры ресурсов), `.jar` клиентского приложения |
| Объявление версии | URI пространства имен XML в `application.xml` идентифицирует версию J2EE 1.x / Java EE 5-8 / Jakarta EE 8-11 |
| Проверка целостности | CRC-32 для каждой записи ZIP; опциональная подпись кода JAR через блоки подписи в `META-INF/` |
| Макс. количество записей | 65 535 (стандартный ZIP); неограниченно с расширением ZIP64 |
| Типичный размер файла | 5 МБ - 500 МБ |
| MIME-тип | `application/java-archive` |
| Метод осмотра | Переименуйте в `.zip` для просмотра всего содержимого любым менеджером архивов (например, 7-Zip) |
| Цели развертывания | WildFly, Eclipse GlassFish, IBM WebSphere, Oracle WebLogic |
| Выпущен | 1999 (J2EE 1.2 specification) |
| Последняя версия | Tracks Jakarta EE specification (Jakarta EE 11, 2024); EAR layout itself is stable |
| Открыть стандартное | Да · без роялти |
| Спецификация | jakarta.ee |
Конвертации EAR
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах EAR.