Enterprise Archive (ear) — формат файлов, используемый Java EE для упаковки одного или более модулей в одном архиве, чтобы развёртывание различных модулей на сервере приложений происходило одновременно и согласованно. Он также содержит XML-файлы, так называемые дескрипторы развёртывания, которые описывают, как развернуть модули.
Для автоматического создания EAR-файлов могут быть использованы утилиты автоматической сборки проектов, такие как Maven или Apache Ant.
EAR-файл представляет собой стандартный файл JAR (который в свою очередь является zip-архивом) c расширением .ear
. Внутри находятся один или более модулей приложения и каталог метаданных META-INF, который содержит один или более дескрипторов развёртывания.
Различные артефакты могут быть встроены в файлы EAR. Артефакты, которые могут быть развёрнуты на сервере приложений:
Большинство серверов приложений загружает EAR как изолированное дерево загрузчиков классов java, изолируя между собой приложения, но разрешая совместное использование для загруженных модулей. Это также дает возможность использования различных версий приложений и библиотек, которые будут развернуты совместно.
С другой стороны, сервер JBoss известен тем, что он не изолирует загруженные компоненты. Веб-приложение в одном EAR может использовать классы других EAR- и WAR-файлов. С версии JBoss 4.0.2 можно использовать также стандартный загрузчик классов.