próbuję osadzić serwera Jetty w aplikacji i widzę naprawdę dziwny problem:Jetty 9 Serwer ma start() metodę
Według dokumentacji, prosty serwer (który buduję jako test) można uruchomić za pomocą następującego kodu:
import org.eclipse.jetty.server.Server;
public class SimpleServer throws Exception
{
public static void main(String[] args)
{
Server server = new Server(8080);
server.start();
server.join();
}
}
wierzę, że poprawny plik Jar z pobranego pomost:
pomost-server-9.3.7.v20160115.jar
Niestety, widzę, że klasa serwera, której używam, nie ma publicznej metody start(). Ma chronioną metodę start(), która ma parametr LifeCycle, ale to jest to. Publiczna metoda start() wymieniona w dokumentacji (i w kilku odpowiedziach tutaj w Stack Overflow) nie istnieje!
Czy używam właściwej klasy serwera? Jeśli nie, to gdzie dostanę właściwy?
Ktoś proszę doradzić ...
Nie rozumiem, jak to pomoże. Mam oba słoiki w moich zależnościach i metoda jest nadal chroniona. Nie mogę znaleźć żadnych przykładów, które w ogóle potwierdzają tę kwestię. – mdhirsch
Po dodaniu tej zależności - użyje metody AbstractLifeCycle.start. Jeśli dodałeś "jetty-util- {version}" - odśwież projekt, a teraz powinna być dostępna publiczna metoda Server.start bez parametrów. – rholovakha
Pracowałem dla mnie. Dzięki. Byłem z dala od Javy przez jakiś czas i, o ile pamiętam, nie było czegoś takiego jak metoda rozszerzenia (jak C#). Ta odpowiedź byłaby świetna, gdyby wyjaśniono mechanikę za nią. – user666412