2014-07-10 14 views
13

W Eclipse, na przykład przy tworzeniu aplikacji internetowych, wszelkie zmiany w plikach HTML w pakietach są automatycznie odzwierciedlane podczas przeglądania w przeglądarkach, nawet gdy program jest uruchomiony.Automatyczne ponowne ładowanie zasobów klasy Java w IntelliJ IDEA

Nie wygląda to tak, jak w IntelliJ IDEA. Muszę więc ponownie uruchomić program za każdym razem, gdy wprowadzam niewielkie zmiany w kodzie HTML. Czy jest jakieś ustawienie, które to umożliwi, lub w ogóle nie jest możliwe?

+0

w jaki sposób uruchamiasz swoją aplikację internetową za pośrednictwem IntelliJ? –

+1

Nie jestem pewien, jak dokładnie Eclipse to obsługuje, ale IntelliJ zwykle działa przez kopiowanie wszystkich zależnych elementów zasobów do katalogu wyjściowego, gdy projekt jest zbudowany, a nie podczas działania. IntelliJ ma opcję automatycznej kompilacji projektu, ale tylko wtedy, gdy aktualnie nie jest wykonywana. –

+0

W swoim tytule wspominasz o plikach klas Java, ale plikach HTML. Czy próbujesz ponownie załadować zarówno pliki HTML, jak i zasoby klasy Java? Z jakiego serwera korzystasz? Czy używasz kontener serwletu, takiego jak Tomcat? –

Odpowiedz

4

Eclipse automatycznie tworzy projekt domyślnie, a IntelliJ nie. To wyjaśnia różnicę w zachowaniu.

Możesz "ręcznie" (Ctrl + F9) ręcznie, jak trzeba, aby ponownie załadować zasoby. Nie powinieneś ponownie uruchamiać aplikacji, a to powinno być naprawdę szybsze.

Lub można go włączyć w ustawieniach kompilatora, ale może powodować zamrożenie środowiska, więc może nie być to, co chcesz.

3

Używam Netbeans i używam przeglądarki Google Chrome ze złączem Netbeans, podczas wprowadzania zmian w kodzie jest on automatycznie aktualizowany w przeglądarce. Nie znam żadnej funkcji IntelliJ IDEA. ale proponuję ci spróbować na netbeans.

Możesz pobrać Netbeans Connector dla Google Chrome z tego linku. download netbeans connector

5

Gdy aplikacja jest pozbawione błędów w IntellJ IDEA można przeładować wszystkie zmienione klas i zasoby z menu:

Run ->Reload Changed Classes

Jeśli debugowanie wojnę z Refresh resources on frame włączoną , następnie proces ponownego ładowania odbywa się automatycznie.

2

1) Upewnij się, że na starcie uruchomionego artefaktu jest "eksplodowana", a nie w wersji spakowanej. (Zobacz na przykład to pytanie SO: "Update resources" option missing in IntelliJ IDEA)

2) Po naciśnięciu przycisku uruchamiania lub debugowania pojawia się okno dialogowe, w którym można wykonać czynności. Opcje "Aktualizuj zasoby" i "Zaktualizuj zasoby i klasy" zamieniają zmienione pliki HMTL/CSS bez ponownego wdrażania.

Można również użyć klawiszy CTRL + F10 do aktualizacji. Przy pierwszym użyciu wyświetli to samo okno dialogowe, ale możesz wybrać preferowaną opcję i zaznaczyć pole "nie pytaj ponownie". Potem po prostu szybko wciskasz CTRL + F10 przed przejściem do przeglądarki.

LUB

Istnieje również opcja aktualizacji zmieniły zasobów dezaktywacji ramka, która wydaje się być funkcja Eclipse prosiłeś. Opis tego ustawienia można znaleźć tutaj: https://www.jetbrains.com/idea/help/updating-applications-running-on-application-servers.html lub inny przewodnik krok po kroku: tutaj: IntelliJ and Tomcat....changed files are not automatically recognized by Tomcat

+0

Wybrałem okno "nie pytaj ponownie", jak przywrócić? –

2

Z Gradle można uruchomić ciągłą kompilację w tle. Uruchom w folderze głównym projektu:

./gradlew --continuous classes 

Albo tylko aktywów:

./gradlew --continuous processResources 

Współpracuje z LiveReload wiosennych-Boot-DevTools.

+0

to uratowało mi życie dzięki! działa jak urok! :) – 123123d

Powiązane problemy