SzukamNeta.pl – Wicket, Maven, SVN, Hudson
Transkrypt
SzukamNeta.pl – Wicket, Maven, SVN, Hudson
SzukamNeta.pl – Wicket, Maven, SVN, Hudson - tutorial
Zważywszy fakt stosowania w realizowanym projekcie wielu różnych narzędzi zarówno po stronie
lokalnej, na komputerze programisty, jak i na zdalnym serwerze, za zasadne uznano stworzenie miniporadnika pozwalającego każdemu członkowi zespołu projektowe na szybkie wdrożenie i sprawną
pracę.
Maven2
Uwaga: instalacja Maven’a jest przeprowadzana w momencie instalacji w środowisku Eclipse
narzędzia integracyjnego, opisanego poniżej, więc do tego punktu należy wrócić jedynie wtedy,
kiedy po instalacji pluginu, maven nie będzie działać.
Przebieg instalacji:
1. Ściągamy Mavena ze strony: http://maven.apache.org/index.html
2. Rozpakowujemy w dowolnym katalogu, czytamy README i podążamy za wskazówkami.
Eclipse
Opis instalacji całego środowiska Eclipse nie jest obejmowany przez zakres tego poradnika, dlatego
skupimy się na opisie instalacji dodatków, do działającego już w pełni środowiska (na daną chwilę:
wersji Ganymede).
Wtyczki WEBTOOLs
Przebieg procesu instalacji:
1. Wybieramy z głównego menu Help -> Install New software.
2. Dodajemy u góry nową stronę: http://download.eclipse.org/webtools/updates/
Zaznaczenie wszystkich dostępnych dodatków, może spowodować zwrócenie przez instalatora błędu
o niespełnionych powiązaniach, daltego też w celu uniknięcia tych problemów, należy odznaczyć trzy
pkiety odpowiedzialne za WebTesty .
Wtyczka M2eclipse
1. Ponownie dodajmy kolejną stronę: http://m2eclipse.sonatype.org/update/
Ta będzie instalować narzędzie do integracji z Mavenem. Instalujemy Maven Integration
2. Podczas instalacji wszystko powinno się ładnie udać I chyba będzie chciało zrestartować
Eclipse’a.
3.
Na tym instalacje się kończą.
Wtyczka Subversive
Jeśli jeszcze nie macie czegoś co działałoby z repozytorium SVN, to trzeba doinstalować:
1. Uruchamiamy Help -> Install New Software
2. Dodajemy stronę
http://community.polarion.com/projects/subversive/download/eclipse/2.0/update-site/
3. Wybieramy Subversive SVN Connectors i stamtąd ja mam zainstalowane:
•
JavaHL 1.6.0 Win32 Binaries
•
Native JavaHL 1.6 Implementation
•
Subversive SVN Connectors
4. Dajemy Finish i instalujemy.
Struktura domeny szukamneta.pl
W toku zarządzania tym żeby było ładnie, powstały następujące subdomeny:
•
http://wiki.szukamneta.pl – Wiki projektu
•
http://www.szukamneta.pl , http://szukamneta.pl – Adres pod którym dostępna jest wersja
do pokazania klientowi.
•
http://svn.szukamneta.pl – nasz SVN. Struktura jest standardowa czyli 3 foldery:
o Trunk – najnowsza wersja gotowa do deployowania. Poddawana ciągłej integracji i
budowaniu co godzinę przy użyciu Hudsona (http://szukamneta.pl:8080/hudson ).
o Branches – tutaj możecie sobie tworzyć własne gałęzie jak będą jakieś rewolucyjne
zmiany
o Tags – tutaj robimy screenshoty kolejnych buildów.
Więcej o tym z czym to się je: http://urzenia.net/351/sposob-pracy-na-subversion-branchetagi-etc/ http://bazawiedzy.cichaprzystan.org/5/sposob-pracy-na-subversion-branche-tagietc/
•
http://dev.szukamneta.pl – tutaj będziemy trzymać wszystkie wersje developerskie i
generalnie może tego być ile tylko wam się wymarzy, ale najlepiej żeby każdy po postu miał
tutaj swojego DEV’a i na nim pracował jeśli chciałby testować. Ale o testowaniu lokalnym też
zaraz będzie.
•
http://dev.szukamneta.pl/autobuild - specjalne miejsce na serwerze developerskim, w
którym znajduje się najświeższy (generowany co godzinę) build stworzony na podstawie
trunk’a przez Hudsona.
Łączenie z SVNem i pobieranie projektu
Na serwerze dev.szukamneta.pl już teraz jest wersja projektu gotowa do dalszej pacy, tj. stworzona
za pomocą archetypu i będąca typowym HelloWorld, ale działa i można spokojnie rozbudowywać.
Przejdziemy teraz procedurę łączenia z SVNem i pobierania aplikacji.
Uwaga: hasła do SVNa macie takie same jak tego do VersionOne!
1. Włączamy Eclipse’a
2. Jeżeli jeszcze nie macie nigdzie widoku SVN
To włączamy go za pomocą: Window -> Show View ->Other i wybieramy z SVN opcję „SVN
Repositories”. Pokaże się to co u góry
3. Klikamy
albo pod prawym przyciskiem New -> Repository location
4. Dostajemy okienko
5. W url wpisujemy: http://svn.szukamneta.pl
6. User i hasło już znamy więc podajemy. Najlepiej zapisać hasło, to nie będzie o nie się
upominać.
7. Klikamy Finish i czekamy aż się wszystko popodłącza.
8. Wracamy do okienka z repozytoriami i widzimy dodane nasze.
9. Rozwijamy trójkącikiem z lewej i widzimy
10. Najnowsza wersja jest w trunk więc klikamy prawym na to i z podręcznego menu wybieramy
Uwaga: Wybieramy to z menu podręcznego dla ‘trunk’.
11. Otwiera się okienko
12. Nic nie zmieniamy i klikamy Finish. Projekt zainstaluje się w katalogu naszego workspace’a w
folderze o takiej nazwie jak widać w okienku.
13. Wracamy do Package explorera i widzimy już
14. Możemy pracować.
Wysyłanie zmian na serwer
Wszelkie zmiany można wysłać za pomocą opcji Team dostępną pod prawym przyciskiem myszy w
pokazanym powyżej widoku Project Explorer.
Kompilacja i uruchomienie aplikacji
Do kompilacji będziemy wykorzystywać tylko i wyłącznie opcje Maven’owe.
Buildowanie lokalne
Jeśli chcemy odpalić sobie na własnym kompie serwer developerski, nie ma nic prostszego. Maven
ma w sobie zaszyty Jetty plugin, który startuje na porcie 8080 i można się do niego dostać przez
http://localhost:8080
Aby to zrobić:
1. W elipsie dajemy Ctrl+F11 czyli uruchomienie.
2. Wyskakuje okienko
3. Wybieramy maven build..
4. Mamy kolejne okienko
5. Na samej w górze w Name wpiszmy sobie coś co nam później pomoże znaleźć to co robimy,
więc niech będzie Local run albo cokolwiek innego co powie o tym, że jest to lokalne
uruchomienie.
6. Pole Base direktory uzupełnione jest z automatu.
7. Do pola Goals wklejamy: install org.mortbay.jetty:maven-jetty-plugin:6.1.21:run
8. Wybieramy run i dajemy Apply a następnie Run.
9. Na konsoli zaczną się pojawiać logi z kompilacji, testowania oraz samego buildowania.
Wszystko co będzie potrzebny, czyli np. sam jetty, zostanie pobrane automatycznie i
zainstalowane.
10. Na koniec dobrze zobaczyć coś takiego:
[INFO] Started Jetty Server
11. A to oznacza, że serwer stoi z przeglądarki możemy spokojnie poklikać.
12. Jak już nam się znudzi klikanie wybieramy Stop z panelu
13. Tyle lolaklnego.
Buildowanie zdalne
Domyślnie projekt na serwerze jest ustawiony do zdalnego buildowania w katalogu
/szukamneta/dev/tmp który na serwerze jest dostępny z poziomu http://dev.szukamneta.pl/tmp.
Jest to typowo tymczasowa lokalizacja. Każdy z nas może sobie dowolnie tworzyć katalogi w obrębie
dev’a, ale wydaje mi się że każdemu spokojnie wystarczy jeden z imieniem lub ksywką, do którego
będzie za każdym razem deployować wyniki swojej pacy i sprawdzać.
Aby zmienić zdalny katalog na taki jak wspomniane powyżej należy:
1. W widoku Project Explorer znaleźć w głównym drzewie plik POM.xml kliknąć prawym i Open
With -> Text Editor
Odszukujemy
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<configuration>
<warFile>
${project.build.directory}/${project.build.finalName}.war
</warFile>
<update>true</update>
<path>/szukamneta/dev/tmp</path>
<url>http://szukamneta.pl:8080/manager</url>
<username>xxxxxxxxx</username>
<password>xxxxxxxxx</password>
</configuration>
</plugin>
2. W znaczniku <path> zmieniamy ostatni człon, np. na Intel, waser itp.
3. Zapisujemy plik.
4. Przechodzimy do konfiguracji Mavena do zdalnego builda.
5. Klikamy Ctrl+F11 i jeśli pokaże nam się to samo okienko to co wyżej to dobrze. Jak nie, to
wchodzimy przez
Wybierając Run Configurations
6. Widzimy:
7. W drzewku Maven Build klikamy prawym i dajemy New.
8. Nazywamy tak jak ostatnio, czyli tak żebyśmy wiedzieli, ze to jest zdalny build.
9. W Goals tym razem wklejamy: install org.codehaus.mojo:tomcat-maven-plugin:1.0-beta1:deploy
10. Tak jak ostatnio klikamy Apply i Run. Śledzimy konsolę w poszukiwaniu tego co nas
najbardziej interesuje czyli sformułowania BUILD SUCCESSFUL lub BUILD FAILED.
Hudson
W ramach zapewniania najwyższej jakości wykonywanego projektu równolegle do build’ów
wykonywanych przez członków zespołu wykonywane są automatyczne testy, integracja i
deployowanie najbardziej aktualnej wersji pobranej bezpośrednio z SVNa, przy pomocy Hudsona.
Dostęp do niego, aczkolwiek nie wymagany dla większości członków zespołu, możliwy jest po
podaniu loginu i hasła takiego jak do VersionOne.
Automatycznie zbudowana aplikacja dostępna jest pod adresem: http://dev.szukamneta.pl/autobuild
Grzegorz Musiał, 21.11.09r.