Od paru dni używam Eclipse'a Galileo. Po zainstalowaniu nowego środowiska lokalne repozytorium Mavena nie było widoczne przez Eclipse, dlatego należało ustawić zmienną środowiskową M2_REPO, która będzie wskazywała na fizyczną lokalizację repozytorium. W tym celu postanowiłem zmodyfikować plik .bashrc i dodać w nim M2_REPO, aby nie mieć problemów przy instalowaniu nowej wersji IDE. Zrobiłem restart Ubuntu (który okazało się, że nie był konieczny) i uruchomiłem ponownie Eclipse'a. Niestety IDE wciąż nie widziało bibliotek wskazanych w pom.xml czyli wynikało z tego, że zmienna M2_REPO nie jest widoczna. Trochę się zdziwiłem wykonałem w terminalu komendę printenv, która jawnie wskazywała, że zmienna została utworzona. Nie chciałem już więcej się zastanawiać i stworzyłem zmienną M2_REPO pod Eclipse. Wszystko zaczęło działać poprawnie. Nie mam jednak pojęcia dlaczego Eclipse zignorował zmienną z .bashrc? Czyżby plik ten był wyłącznie uruchamiany kiedy odpalam konsolę? To też nie ma dla mnie sensu, bo Eclipse uruchamiam ręcznie z terminala.
Ostatnio zdarzało mi się popełniać krótsze posty. Mam nadzieję, że w niedługim czasie ulegnie to zmianie. Póki co za oknem pada deszcz i trzaskają pioruny. Mam nadzieję, że po tym pogodowym katharsis powietrze będzie rześkie.
No ale wróćmy do tematu... Moją ostatnią aplikację webową deployuję pod Tomcata za pomocą Mavena i ogólnie sobie to chwalę, gdyby jeszcze nie fakt, że deployment w Javie trochę trwa. Przy mojej aplikacji i na moim sprzęcie średnio trwa to około minutę. Zauważyłem też dziwną rzecz. Dwukrotnie zdarzyło mi się, że po redeploymencie (mvn clean tomcat:redeploy) zminay w CSS nie były aktualizowane. Można to było łatwo sprawdzić za pomocą Firebuga i sprawdzenie treści pliku css. Wszelkie próby restartu kontenera servletów nie pomagały. Wiedziałem, że od strony aplikacji wszystko wygląda ok, ale problem wciąż pozostawał. Metodą prób i błędów udało mi się znaleźć pewne rozwiązanie, a wygląda ono następująco:
1. Uruchom Tomcata
2. Undeployuj aplikację: mvn tomcat:undeploy
3. Zamknij Tomcata
4. Uruchom ponownie Tomcata
5. Ponownie zdeployuj aplikację mvn clean tomcat:deploy
Teraz powinno wszystko poprawnie działać. Nie wiem czy wina leży tu po stronie Tomcata czy może plugin dla Mavena ma jakiś błąd. W każdym razie ta sekwencja czynności powoduje, że wszystko znowu poprawnie działa.
To na dzisiaj byłoby tyle. Czeka mnie jeszcze wieczorem podróż do Chojnic. Czas odwiedzić rodzinne strony. Bywajcie ;)