2012-09-12 10 views
12

Sprawdzałem JRebela. Zgodnie z ich strony:Jakie są zalety JRebel?

„JRebel jest plugin coś-Java, który przyspiesza rozwój JVM oparte (Java, Scala, Groovy) poprzez przeładunek zmiany wprowadzone w obszarze roboczym do uruchomionego JVM, bez ponownego uruchamiania lub redeploys , utrzymując stan aplikacji podczas kodowania. "

To wydaje się być takie samo jak to, co mamy już osiągnięcia z Eclipse, Netbeans i IntelliJ: oszczędzamy a nasze zmiany są wdrażane natychmiast. Jakie dodatkowe korzyści zapewni nam JRebel?

Czy ktoś mógłby mi to wytłumaczyć?

+0

JRebel wykorzystuje okropny sposób klasa przeładowaniem. Ponieważ odgadłem, w jaki sposób działa JRebel, nigdy go nie użyję. – michael

Odpowiedz

12

IDE (Eclipse, NetBeans lub IntelliJ) automatycznie ponownie zainstalować aplikacji, jeśli zostało to skonfigurowane, co nie jest natychmiastowe. Zasadniczo to tylko automatyzacja wciąż powoduje rzeczywiste ponowne wdrożenie aplikacji, w tym tworzenie nowego programu ładującego klasy i wszystkich dodatkowych elementów, które są zaangażowane w proces inicjowania.

W niektórych przypadkach IDE w połączeniu z niektórymi kontenerami może zachować stan sesji - jeśli to zadziała dla Ciebie. Jeśli nie - proszę bardzo - JRebel jest odpowiedzią.

W przypadku wdrożenia pakietowego faza kompilacji się sumuje, ale za pomocą JRebel po prostu eliminuje się wszystkie naraz.

+0

Czy możesz podać swoje przemyślenia na http://stackoverflow.com/questions/35249234/how-hot-deployment-works-warternally. Nie sądzę, że ta odpowiedź jest nadal ważna, tzn. "Zasadniczo to tylko automatyzacja wciąż powoduje rzeczywiste przeniesienie.", Ponieważ przesunięcie zaćmienia jest naprawdę szybkie teraz dni – emilly

+0

Przebudowa @emilly vanilla wciąż jest po prostu przeniesieniem jeśli jest uruchamiany przez Eclipse lub inne IDE. Chyba że określona technologia w czasie wykonywania zapewnia specjalne zaczepy dla IDE (lub dowolnego innego narzędzia) do wyzwalania i jest zoptymalizowana pod kątem szybkości aktualizacji/redeploy. –

5

Niektórych zmian nie można przeładować, szczególnie w przypadku zmiany klas plików jar bez konieczności ponownego ładowania lub restartowania serwera (niezależnie od używanego serwera). Automatycznie zmienia skompilowane klasy na serwerze i są automatycznie ponownie ładowane w ścieżce klas.

Podczas zapisywania i odświeżania zmian w IDE, zasadniczo odbudowuje się plik wojenny i przenosi go na serwer. Proces ten może nadal spowalniać, szczególnie podczas ponownego instalowania dużych aplikacji z wieloma plikami jar i plikami wojny, a cała ścieżka klas musi zostać odświeżona.

0

JRebel nie jest Wtyczka IDE. JRebel jest dostarczany z wtyczkami do Eclipse, IntelliJ IDEA, NetBeans i JDeveloper, jednak agent JRebel został zaprojektowany jako niezależny od IDE i może być używany poza IDE.

Jeśli masz pytania Czym jest JRebel, a czym nie jest? tu jest link, który może dostarczyć odpowiedzi na wszystkie pytania, które szukasz:

What JRebel is and what it is not?

Oto film o JRebel:

JRebel video

Powiązane problemy