wtorek, 9 czerwca 2009

Wygodniejsze tworzenie aplikacji z JavaRebel

Jedną z bardziej denerwujacych rzeczy w pisaniu aplikacji Javovych (aplikacji webowych) jest ciągłe redeployowanie aplikacji celem sprawdzenia czy naniesione poprawki lub nowe funkcje działają poprawnie.

W językach skryptowych takich jak PHP, Ruby czy też świeży Grails dzieje się to w pełni automatycznie, zmienię część kodu, przechodzę do przeglądarki odświeżam i cieszę się, że działa (bądź nie).


I w tym miejscu z pomocą przychodzi nam narzędzie JavaRebel (darmowy dla aplikacji open source) firmy ZeroTurnAround.  JavaRebel to agent podpinany bezpośrednio do maszyny wirtualnej który czuwa nad naszymi plikami i gdy zostaną zmienione (ponownie skompilowane) ładuje je na naszym serwerze. Dzięki temu nie musimy przechodzić żmudnego procesu tworzenia pakietu war i jego deployowania (u mnie ponad 10s), zmiany widoczne są niemal od razu.  Po zainstalowaniu odpowiedniej wtyczki możemy bezproblemowo pracować z naszym springowym projektem (Guice, Struts, Wicket i inne również dostępne) a JavaRebel będzie automatycznie wgrywać beany przez nas utworzone (czyta automatycznie wszystkie pliki konfiguracyjne).

Jednak, nie wszystko złoto co się świeci, faktycznie JavaRebel przyśpieszył moją pracę nad projektem i polepszył mój stan psychiczny, nadal jednak brakuje mi czegoś co będzie automatycznie aktualizować pliki JSP. Co prawda ta sama firma wydała również JSPViewer który rozwiązuje ten problem, jednak jego specyfika nie pozwala na użycie go w Springowym projekcie, gdzie wszystkie zapytania są mapowane na wirtualne adresy.

Jeśli ktoś wie, jak rozwiązać ten problem, będę wdzięczny.

1 komentarz:

  1. Ciekawy wpis. Właśnie zastanawiałem się ostatnio nad tym problemem. Muszę sprawdzić wspomniane narzędzie.

    OdpowiedzUsuń