Co to jest format pliku EAR?
Plik .ear to jednostka pakowania najwyższego poziomu dla korporacyjnych aplikacji Java, zdefiniowana w specyfikacji J2EE (obecnie Jakarta EE) od wersji 1.2 wydanej w grudniu 1999 roku. Strukturalnie jest to archiwum ZIP, współdzielące magiczne bajty PK (50 4B 03 04), które łączy moduły webowe (.war), moduły EJB (.jar), moduły adapterów zasobów (.rar) oraz pliki JAR klientów aplikacji w jeden artefakt gotowy do wdrożenia.
Obowiązkowy deskryptor wdrożenia META-INF/application.xml identyfikuje archiwum jako EAR i deklaruje, jakie podmoduły się w nim znajdują. Kompresja poszczególnych wpisów wykorzystuje algorytm DEFLATE; pojedyncze elementy mogą być również przechowywane bez kompresji. Ponieważ kontenerem jest standardowy ZIP, zmiana nazwy pliku na .zip i otwarcie go w dowolnym menedżerze archiwów pozwala na podejrzenie całej struktury wewnętrznej.
Pliki EAR są wdrażane na pełnych serwerach aplikacji Jakarta EE - najpopularniejszymi celami są WildFly (JBoss), Eclipse GlassFish, IBM WebSphere oraz Oracle WebLogic. Nowoczesne architektury mikroserwisowe preferują wykonywalne pliki typu fat-JAR lub obrazy kontenerów zamiast plików EAR, jednak wdrażanie EAR pozostaje standardem dla pełnych obciążeń Jakarta EE i dużych, starszych aplikacji Java EE. Podstawowy układ oparty na ZIP jest stabilny od czasu oryginalnej specyfikacji J2EE 1.2; wersjonowanie odbywa się poprzez deklaracje przestrzeni nazw w application.xml.
Bezpieczeństwo
RYZYKO: MEDIUMPlik EAR zawiera wykonywalny kod po stronie serwera, który działa na serwerze aplikacji z jego uprawnieniami. Wdrażaj tylko pliki EAR z zaufanych źródeł. Złośliwy plik EAR może zawierać powłoki webowe (web shells), zmodyfikowane EJB lub wykorzystywać luki w dołączonych bibliotekach. Przed wdrożeniem niezaufanego pliku EAR sprawdź jego zawartość za pomocą 7-Zip. Dbaj o aktualizację serwera aplikacji i dołączonych bibliotek.
Szczegóły formatu
w pigułce- Plik audio Audacity - Niektóre starsze sesje Audacity mogły być eksportowane z rozszerzeniem .ear; nie ma to żadnego związku z Java EE.
Programy otwierające pliki EAR
Szczegóły techniczne
specyfikacja| Format kontenera | Archiwum ZIP (te same magiczne bajty `50 4B 03 04` co w `.zip` i `.jar`) |
| Kolejność bajtów | Little-endian (format ZIP) |
| Kompresja | DEFLATE dla każdego wpisu; dopuszczalne również STORED dla poszczególnych elementów |
| Obowiązkowy deskryptor | `META-INF/application.xml` - identyfikuje EAR i deklaruje jego podmoduły |
| Typy podmodułów | `.war` (web), EJB `.jar` (enterprise beans), `.rar` (adaptery zasobów), `.jar` klienta aplikacji |
| Deklaracja wersji | URI przestrzeni nazw XML w `application.xml` identyfikuje wersję J2EE 1.x / Java EE 5-8 / Jakarta EE 8-11 |
| Kontrola integralności | CRC-32 dla każdego wpisu ZIP; opcjonalne podpisywanie kodu JAR poprzez bloki sygnatur w `META-INF/` |
| Maksymalna liczba wpisów | 65 535 (standardowy ZIP); nieograniczona z rozszerzeniem ZIP64 |
| Typowy rozmiar pliku | 5 MB - 500 MB |
| Typ MIME | `application/java-archive` |
| Metoda inspekcji | Zmiana nazwy na `.zip`, aby przeglądać zawartość w dowolnym menedżerze archiwów (np. 7-Zip) |
| Cele wdrożeniowe | WildFly, Eclipse GlassFish, IBM WebSphere, Oracle WebLogic |
| Wydano | 1999 (J2EE 1.2 specification) |
| Najnowsza wersja | Tracks Jakarta EE specification (Jakarta EE 11, 2024); EAR layout itself is stable |
| Otwarty standard | Tak · bezpłatny (royalty-free) |
| Specyfikacja | jakarta.ee |
Konwersje EAR
Pytania i odpowiedzi społeczności
pytania użytkownikówBrak pytań - bądź pierwszą osobą, która zapyta o pliki EAR.