Maven - aplikacje internetowe i wtyczki

Spisie treści
W tym samouczku zamierzamy stworzyć aplikację internetową przy użyciu archetypu Maven z kompilatorem Java 1.4, aby później zobaczyć, jak działają wtyczki z Mavenem, jak są deklarowane i jak są używane.
Pierwszą rzeczą, jaką zamierzamy zrobić, jest zainicjowanie naszego generatora archetypów za pomocą polecenia mvn achetype: generuj w ten sam sposób, w jaki zrobiliśmy to w naszym poprzednim samouczku, a gdy poprosi nas o numer identyfikujący archetyp, dołączymy następujące wyrażenie:
Webapp-j2ee14

Który przefiltruje archetypy, aby dać nam ten odpowiadający aplikacji internetowej używającej Java EE 1.4, którą wybierzemy za pomocą 1 (jeśli umieścisz tylko frazę „aplikacja internetowa”, otrzymasz obszerniejszą listę archetypy internetowe, ale to będzie ten, którego użyjemy w tym samouczku). Po wybraniu przypisz mu wybrany „groupId” oraz artefakt „mywebapp14” i kontynuuj, aż do zakończenia tworzenia.
Po tym powinieneś pozostać z folderem o nazwie webapp14 i plikiem POM, który powinien wyglądać tak:

Możesz zauważyć, że istnieje kilka różnic w stosunku do podstawowego archetypu, który stworzyliśmy wcześniej:
  • Etykieta „opakowanie” wskazuje teraz na wojnę zamiast na jar, co wygeneruje plik, który możemy wdrożyć na naszym preferowanym serwerze sieciowym.
  • Mamy 2 dodatkowe zależności, które pomogą nam w generowaniu aplikacji webowych. Paczka javax.servlet i pakiet javax.servlet.jsp aby móc korzystać z serwletów i JSP w naszym kodzie (które doskonale wspiera serwer my Tomcat).
  • Po zależnościach mamy blok „build”, w którym znajduje się wtyczka kompilatora Maven. Dzieje się tak, ponieważ Maven kompiluje nasz kod przy użyciu własnej domyślnej wtyczki, która zostanie dostosowana do wersji Javy, którą masz na swoim komputerze, ale ponieważ w tym projekcie zdecydowaliśmy się na użycie Javy 1.4, POM wyraźnie stwierdza, że ​​będziemy używać TA konkretna wersja Java.

To mówi nam, że Maven zawsze kompilował nasz kod przy użyciu natywnej wtyczki. Odbywa się to, aby umożliwić większą elastyczność narzędzia, ponieważ będąc modyfikowalnym atrybutem w POM, możesz skonfigurować go tak, aby używał dowolnego innego typu wtyczki (później użyjemy wtyczki Jetty do aplikacji internetowych).
Gdy Maven zakończy generowanie naszego archetypu (i możesz wykonać te kroki w poprzednim samouczku), przechodzimy do wiersza poleceń w folderze zawierającym plik POM (mywebapp14 w tym samouczku) i stamtąd przekazujemy Mavenowi instrukcje, za pomocą których będzie manipulować naszym kodem. Wśród głównych poleceń Mavena są:
mvn czysty„Czyści” nasz folder docelowy, usuwając spakowane do tej pory pliki i pozostawiając naszą aplikację w „stanie początkowym”.
kompilacja mvnSkompiluj nasze klasy java znajdujące się w folderze src/main generując odpowiedni .class w folderze target/classes naszego projektu.
test mvnPrzetestuj nasz kod, korzystając z przypadków testowych, które stworzyliśmy w naszym folderze src/test.
pakiet mvnPakuje nasz kod zgodnie z formatem, który zdefiniowaliśmy w pliku POM i umieszcza go w folderze docelowym.
Należy zauważyć, że polecenia te wykonywane są sekwencyjnie, to znaczy przy użyciu polecenia test nasz projekt zostanie skompilowany i przetestowany, a przy użyciu polecenia package kod jest kompilowany i przeprowadzane są testy przed ostatecznym spakowaniem. Dodatkowo, jak wyjaśniłem wcześniej, te polecenia zależą od wtyczki, której używasz w kompilacji. W tym przypadku są to polecenia używane przez wtyczkę kompilatora Maven.
Aby zobaczyć, jak różni się kompilacja Maven, wykonaj następujący test
1. Utwórz klasę „MyWebApp.java” w pakiecie, który preferujesz w swojej aplikacji.
2. W klasie zadeklaruj odpowiedni pakiet, a zaraz potem umieść:
Importuj plik Java.*;

3. Wewnątrz klasy utwórz metodę Główny i umieść w nim następujący wiersz kodu:
Lista l = nowa ArrayList ();

4. Zapisz klasę Java i uruchom polecenie kompilacja mvn.
5. Obserwuj błąd, który wyświetli wiersz poleceń.
6. W pliku POM zmień „1.4” między znacznikami „źródłowy” i docelowy na „1.5”.
7. Uruchom ponownie polecenie kompilacja mvn.
Błąd jest spowodowany tym, że Java 1.4 nie obsługuje typów ogólnych w kolekcjach, ponieważ zostało to zaimplementowane w wersji Java 1.5.
Jak widać, konfiguracja i użytkowanie Mavena jest niezwykle proste, ale można to skomplikować tak bardzo, jak powoduje to dodanie zależności i wtyczek.
Mam nadzieję, że przeczytasz mnie w następnym samouczku i nie zapomnij zostawić swoich komentarzy do następnego razu!Podobał Ci się i pomógł ten samouczek?Możesz nagrodzić autora, naciskając ten przycisk, aby dać mu pozytywny punkt

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave