Co to jest pom.xml (model obiektowy projektu)? Przykładowy plik pom.xml do wykorzystania w dynamicznym projekcie internetowym (Java / J2EE)

Opublikowany: 2021-06-25
Co to jest pom.xml (model obiektowy projektu)? Przykładowy plik pom.xml do wykorzystania w dynamicznym projekcie internetowym

Co to jest plik pom.xml?

POM oznacza Project Object Model . To podstawowa jednostka pracy w Maven. Plik pom.xml zawiera wszystkie konfiguracje, zależności, integrację wtyczek i instrukcje konfiguracji projektu.

Jest to najlepszy sposób na dodanie do projektu dowolnych zależności bibliotecznych. Kopiowanie plików .jar do folderu zasobów projektu to stary sposób na robienie tego

Przyjrzyjmy się szczegółowo plikowi pom.xml.

Najprostszy domyślny plik pom.xml

Przejdźmy do elementów pom.xml:

Element Opis
projekt Element jest korzeniem deskryptora. W poniższej tabeli wymieniono wszystkie możliwe elementy podrzędne.
Wersja modelu Deklaruje, z którą wersją deskryptora projektu jest zgodny ten POM. Ustaw wersję 4.0.0.
Identyfikator grupy Uniwersalny, unikalny identyfikator projektu. Normalnym jest używanie w pełni kwalifikowanej nazwy pakietu, aby odróżnić go od innych projektów o podobnej nazwie (np. org.apache.maven).
identyfikator artefaktu Identyfikator tego artefaktu, który jest unikalny w ramach grupy podanej przez identyfikator grupy. Artefakt to coś, co zostało wyprodukowane lub wykorzystane w ramach projektu. Przykłady artefaktów stworzonych przez firmę Maven na potrzeby projektu obejmują: pliki JAR, dystrybucje źródłowe i binarne oraz pliki WAR.
wersja Aktualna wersja artefaktu wyprodukowanego przez ten projekt.
zrozumieć elementy pom.xml

plik pom.xml z dodatkowymi elementami

plik pom.xml z większą ilością elementów:

Element Opis
opakowanie Rodzaj artefaktu wytwarzanego przez ten projekt, na przykład słój wojenny pom. Wtyczki mogą tworzyć własne opakowania, a zatem własne typy opakowań, więc ta lista nie zawiera wszystkich możliwych typów.
imię Pełna nazwa projektu.
adres URL Adres URL strony głównej projektu.
zależności Ten element opisuje wszystkie zależności związane z projektem. Te zależności są używane do konstruowania ścieżki klasy dla projektu podczas procesu kompilacji. Są one automatycznie pobierane z repozytoriów zdefiniowanych w tym projekcie.
zależność Grupa projektowa, która stworzyła zależność, np. org.apache.maven.
zbudować Informacje wymagane do zbudowania projektu.
katalog źródłowy Ten element określa katalog zawierający źródło projektu. Wygenerowany system kompilacji skompiluje źródło w tym katalogu podczas kompilowania projektu. Podana ścieżka odnosi się do deskryptora projektu.
finalName Nazwa pliku (bez rozszerzenia i bez informacji o ścieżce), do której zostanie wywołany utworzony artefakt. Wartość domyślna to ${artifactId}-${wersja}.
wtyczki Lista wtyczek do użycia.
podłącz Identyfikator grupy wtyczki w repozytorium.
zakres Zakres zależności – kompilacja, wykonanie, test, system i udostępnienie. Służy do obliczania różnych ścieżek klas używanych do kompilacji, testowania i tak dalej. Pomaga również w określeniu, które artefakty należy uwzględnić w dystrybucji tego projektu.

Opublikowaliśmy ponad 700 samouczków Java na Crunchify i od początku używamy plików pom.xml, w tym zależności Spring MVC.

W ciągu ostatnich kilku lat z powodu dodawania coraz większej liczby zależności bibliotek, samouczek Java pom.xml Crunchify jest teraz większy

Oto nasz aktualny plik pom.xml w celach informacyjnych. Jeśli skopiujesz go i dodasz do swojego projektu, to działa również dla Ciebie.

plik pom.xml, którego używamy do samouczków Java Crunchify

Mam nadzieję, że to wyjaśnia, czym jest plik pom.xml i dlaczego używamy go w dowolnym projekcie Java J2EE.

Daj mi znać, jeśli masz więcej pytań.

Zaktualizuj Log4j do najnowszej wersji

CVE-2021-44228: Apache Log4j2 <=2.14.1 Funkcje JNDI używane w konfiguracji, komunikaty dziennika i parametry nie chronią przed kontrolowanym przez atakującego LDAP i innymi punktami końcowymi związanymi z JNDI.

Od log4j 2.16.0 to zachowanie zostało domyślnie wyłączone.