java.lang.NoSuchMethodError: javax.ws.rs.core.- Anwendung.getProperties()Ljava/util/Karte;
Ich bin nicht in der Lage zu beantworten, die über die folgenden links
Folgende ist meine pom.xml Abhängigkeit
<dependencies>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk</artifactId>
<version>1.11.41</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
<version>0.2</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>6.0.2</version>
</dependency>
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet</artifactId>
<version>2.22</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.jvnet/mimepull -->
<dependency>
<groupId>org.jvnet</groupId>
<artifactId>mimepull</artifactId>
<version>1.6</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>2.22.1</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-server</artifactId>
<version>2.22</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.glassfish.jersey.core/jersey-common -->
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-common</artifactId>
<version>2.22</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-multipart</artifactId>
<version>2.22</version>
</dependency>
<dependency>
<groupId>com.googlecode.json-simple</groupId>
<artifactId>json-simple</artifactId>
<version>1.1.1</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.searchbox/jest -->
<dependency>
<groupId>io.searchbox</groupId>
<artifactId>jest</artifactId>
<version>2.0.2</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.5</version>
<type>jar</type>
</dependency>
<!-- https://mvnrepository.com/artifact/commons-validator/commons-validator -->
<dependency>
<artifactId>commons-validator</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>oro</groupId>
<artifactId>oro</artifactId>
<version>2.0.8</version>
</dependency>
</dependencies>
Habe ich auch durchgemacht, mein ~/.m2/repository/javax/ws/rs/javax.ws.rs-api
- Verzeichnis, aber es enthält nur ein Verzeichnis 2.0.1
.
Ich bin nicht in der Lage, das problem zu verstehen.
Ich bin mit Tomcat 8.
Stacktrace
19-Jul-2017 14:14:37.425 INFO [localhost-startStop-1] org.apache.catalina.core.ApplicationContext.log ContextListener: contextInitialized()
19-Jul-2017 14:14:37.425 INFO [localhost-startStop-1] org.apache.catalina.core.ApplicationContext.log SessionListener: contextInitialized()
19-Jul-2017 14:14:40.784 SEVERE [http-nio-8083-exec-5] org.apache.catalina.core.ApplicationContext.log StandardWrapper.Throwable
java.lang.NoSuchMethodError: javax.ws.rs.core.Application.getProperties()Ljava/util/Map;
at org.glassfish.jersey.server.ApplicationHandler.<init>(ApplicationHandler.java:331)
at org.glassfish.jersey.servlet.WebComponent.<init>(WebComponent.java:390)
at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:172)
at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:364)
at javax.servlet.GenericServlet.init(GenericServlet.java:158)
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1241)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1044)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4944)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5230)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:714)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:581)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:455)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1493)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1432)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:884)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:335)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:618)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:613)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:537)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1085)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:658)
at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1556)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1513)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
Post komplette stacktrace.
Versuchen Sie das löschen
Ich habe das ausprobiert , die ich gelöscht habe ws Verzeichnis und dann neu erstellen mein Projekt , bin ich noch vor den gleichen Fragen.
Sollte es eine weitere Abhängigkeit von den classpath die übergeordnete
Versuchen Sie das löschen
~/.m2/repository/javax/ws/rs/javax.ws.rs-api
- Verzeichnis. Es müssen nicht die wahre Abhängigkeit.Ich habe das ausprobiert , die ich gelöscht habe ws Verzeichnis und dann neu erstellen mein Projekt , bin ich noch vor den gleichen Fragen.
Sollte es eine weitere Abhängigkeit von den classpath die übergeordnete
javax.ws.rs.core.Application
. Sind Sie mit Eclipse IDE?
InformationsquelleAutor Salman Shaikh | 2017-07-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
Application#getProperties()
Methode eingeführt wurde, die in JAX-RS 2.0. Und diese Fehler in der Regel passiert, wenn Sie mischen JAX-RS 1.x und JAX-RS 2.x.So überprüfen Sie die Gläser auf Ihren Klassenpfad ein und entfernen Sie alles, das bezieht sich auf die JAX-RS-1.x (und Jersey 1.x).
Sobald Sie mit Maven können Sie
mvn dependency:tree
und überprüfen, was ist Los mit Ihren Abhängigkeiten.Sehe ich auch ein paar Dinge, die verursachen können einige Kopfschmerzen:
Siehe unten die richtige Servlet-API Abhängigkeit für Tomcat 8 (vergessen Sie nicht die
provided
Umfang):Sicherzustellen, dass alle Jersey-Abhängigkeiten verwenden Sie die gleiche version.
Werden Sie wahrscheinlich nicht brauchen, die
javax.ws.rs-api
,jersey-server
undjersey-common
Abhängigkeiten.Verwenden
jersey-container-servlet
,jersey-media-json-jackson
undjersey-media-multipart
Abhängigkeiten.Den
jersey-container-servlet
Abhängigkeit nutztjavax.ws.rs-api
,jersey-server
undjersey-common
als transitive Abhängigkeiten.Werden Sie wahrscheinlich nicht brauchen
<type>jar</type>
in Ihren Abhängigkeiten.Ja, dachte er sich mit einem schmutzigen workaround . Hatte zu ändern tje-daemon-Skript bin/zeppelin-daemon.sh für die Linie 85 aus
CLASSPATH+=":${ZEPPELIN_CLASSPATH}"
zuCLASSPATH="${ZEPPELIN_CLASSPATH}:${CLASSPATH}"
.Wie ermitteln Sie die JAX-RS-1.x (und in Jersey) Abhängigkeiten?
InformationsquelleAutor cassiomolin
Es kann dadurch gelöst werden, ohne das Glas wie unten definiert, als JSR-Glas ist in Konflikt mit JAX-RS und erzeugen den oben genannten Fehler
Bitte entfernen Sie es und starten, es funktionierte für mich und ich hoffe, es wird für die Arbeit u auch.
InformationsquelleAutor Prakhar Agrawal
Stimme ich mit Cassio. Es gibt ein paar Dinge, die ich möchte hinzufügen:
InformationsquelleAutor Ted_Zactly