Ich habe Dropwizard in meinem Projekt aktualisiert und Problem während der Ausführung von Komponententests, obwohl Service-Start funktioniert gut und alle APIs verhalten sich normal, Problem kommt nur während Tests, hier sind meine Ausführungen:Kein ServiceLocatorGenerator installiert Fehler beim Ausführen von Tests in Dropwizard
Dropwizard: 1.1.0
Jersey: 2.25.1
Guice: 4.1.0
hk2-api: 2.5.0-b36
hk2-utils: 2.5.0-b36
javax.ws.rs-api : 2.1-m05
unten ist der Fehler, wenn ich "mvn test" leite
java.lang.RuntimeException: java.lang.ClassNotFoundException: Provider org.glassfish.jersey.internal.RuntimeDelegateImpl could not be instantiated: java.lang.IllegalStateException: It appears there is no ServiceLocatorGenerator installed.
at javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:153)
at javax.ws.rs.ext.RuntimeDelegate.getInstance(RuntimeDelegate.java:121)
at javax.ws.rs.core.Response$ResponseBuilder.newInstance(Response.java:848)
at javax.ws.rs.core.Response.status(Response.java:590)
at javax.ws.rs.core.Response.status(Response.java:601)
at javax.ws.rs.core.Response.ok(Response.java:622)
...... ** some more lines here **
Caused by: java.lang.ClassNotFoundException: Provider org.glassfish.jersey.internal.RuntimeDelegateImpl could not be instantiated: java.lang.IllegalStateException: It appears there is no ServiceLocatorGenerator installed.
at javax.ws.rs.ext.FactoryFinder.newInstance(FactoryFinder.java:123)
at javax.ws.rs.ext.FactoryFinder.find(FactoryFinder.java:226)
at javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:137)
https://github.com/dropwizard/dropwizard/issues/1772 und https://github.com/HubSpot/dropwizard-guice/issues/95 - Scheint wie einige Abhängigkeiten Integrationsproblem. – zloster
Tatsächlich gibt es eine Pull-Anforderung, die bei 'jersey2-guice' Projekt aussteht, was das Problem lösen sollte. Siehe diesen Kommentar: https://github.com/Squarespace/jersey2-guice/pull/39#issuecomment-274853295 – zloster