Przepraszam, jeśli to pytanie okazuje się głupie, ale po prostu nie mogę znaleźć mojego błędu i sprawdziłem już wiele postów tutaj w SO i innych witrynach. Mam skonfigurować projekt Play 2.3.7 przy użyciu Java. Utworzono plik Global.java we wspólnym pakiecie w katalogu aplikacji. W tym pliku zastępuję onStart (i inne haki), ale nie mogę ich uruchomić. Po prostu nie działają w ogóle. Oto plik Global.java:Global onStart na Play Framework 2.3.7 nie działa?
package common;
import play.Application;
import play.GlobalSettings;
import play.Logger;
public class Global extends GlobalSettings {
@Override
public void beforeStart(Application application) {
Logger.error("good bye cruel world");
super.beforeStart(application);
throw new RuntimeException("WTF");
}
@Override
public void onStart(Application application) {
Logger.error("good bye cruel world");
super.onStart(application);
throw new RuntimeException("WTF");
}
@Override
public void onStop(Application application) {
Logger.error("good bye cruel world");
super.onStop(application);
throw new RuntimeException("WTF");
}
}
i wewnątrz application.conf, oto odpowiednia część, która jest domyślnie skomentował:
# Define the common.Global object class for this application.
# Default to common.Global in the root package.
# application.global=common.Global
Co może być problemem? Dzięki.
Cóż, to działa, jeśli przeniosę je do standardowego pakietu, rzeczywiście. Dzięki. Teraz wygenerowane komentarze są nieco mylące, domyślnie wspominając o wspólnym pakiecie. Próbowałem też przenieść Global.java gdzieś indziej i użyć application.global = the.new.package.Global, ale to nie działa: rzuca wyjątek i aplikacja się nie uruchamia. Jakieś pomysły? – ale64bit
Możesz użyć 'application.global' tylko do zmiany nazwy klasy obiektu' Global'. na przykład 'application.global = SomethingGlobal', ale nie możesz przenieść go do innej paczki. –
Po prostu przeniosłem się i zmieniono nazwę Global.java na common.SomethingElse.java, dodano application.global = common.SomethingElse i zadziałało. Sądzę, że się mylisz. W każdym razie dzięki. – ale64bit