2015-04-17 29 views
9

Nie mogę automatycznie przeładować działając na nowo utworzonych kontrolerach. Moja aplikacja uruchamia się poprawnie, ale za każdym razem, gdy robię grails create-controller <controller-name>, kontroler jest tworzony i widzę, że nowy kontroler jest kompilowany.Jak włączyć automatyczne ładowanie Grails 3.x?

Kiedy próbuję uzyskać dostęp do nowo wygenerowanego kontrolera, zawsze otrzymuję komunikat "Strona nie znaleziona (404)". Po ponownym uruchomieniu aplikacji Grails nowo utworzony kontroler działa poprawnie.

Używam Grails 3.0.1 na OSOS Yosimite i Java 1.8.0_31-b13. Jakąkolwiek wskazówkę, jak to naprawić?

zaczynam aplikację za pomocą następujących kombinacjach:

grails run-app 
grails -reloading run-app 
grails run-app -reloading 

Żaden z nich pracowali przeładowywania utworzony nowy kontroler

+0

Proszę wkleić pełne polecenie, którego używasz do uruchamiania aplikacji. –

+0

Zaktualizowano pytanie za pomocą pełnych poleceń, które próbowałem. – Marco

+0

Druga opcja powinna działać. Spróbuj zrobić "grails clean-all" i użyj drugiej opcji i spróbuj ponownie. –

Odpowiedz

0

co pracował dla grails 2.x należy pracować dla 3.x, jak również .

Spróbuj poniżej polecenia, ustawienie tego na false musi umożliwić ponowne załadowanie.

grails -Ddisable.auto.recompile=false run-app 
+0

Dziękuję za odpowiedź, ale także to nie rozwiązuje problemu. – Marco

+0

Wasz nagłówek z pytaniem mnie zbłądził. Twój kontroler się kompiluje. Ale strona nie znaleziona 404 jest ze względu na widok, który próbuje renderować nie jest obecny? Jakie są szczegóły, które zawiera nowo utworzony kontroler? Czy jest on rusztowany? Znajdź odpowiednie widoki lub umieść render "cześć świat!", Aby przetestować –

+0

Jeśli brakuje tego widoku, otrzymasz błąd HTTP 500. Przekazanie wiadomości, że nie może rozwiązać problemu. Podsumowując, widzę w konsoli, że nowo utworzony kontroler jest skompilowany, ale niedostępny, dopóki nie uruchomię ponownie aplikacji. – Marco

4

Grails wprowadzono co Pomyślę błąd w wersji 2.4.4 i nadal obecne w co najmniej wersji 3.0.4, gdzie automatyczny przeładunek nie działa, jeśli masz miejsce w dowolnym miejscu w pliku (w tym przypadku ścieżka kontrolera).

Aby uzyskać więcej informacji, zobacz numer this post.