运行jersey项目时出现java.lang.AbstractMethodError

时间:2015-12-09 10:36:37

标签: java maven jersey tomcat7 jax-rs

我在运行Jersey项目时遇到此异常

java.lang.AbstractMethodError: javax.ws.rs.core.UriBuilder.uri(Ljava/lang/String;)Ljavax/ws/rs/core/UriBuilder;
at javax.ws.rs.core.UriBuilder.fromUri(UriBuilder.java:119)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:293)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:223)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)

pom中的依赖关系如下:

            <dependency>
                <groupId>org.glassfish.jersey</groupId>
                <artifactId>jersey-bom</artifactId>
                <version>2.22</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

在使用maven编译时,它给出了如下错误:

项目ID:未知:hk2-parent

原因:个人资料中的JDK版本无效&#39; javadoc-jdk8 +&#39;:无限范围:[1.8项目未知:hk2-parent

1 个答案:

答案 0 :(得分:1)

我几乎100%确定您的依赖项中同时包含 com.sun.jersey org.glassfish.jersey 。那是错的,不要这样做。尝试使用以下命令运行maven依赖关系树

key == "mail"

如果您没有发现任何可疑的内容,请尝试:

mvn dependency:tree

也不要使用导入范围,但要编译。

同时检查您是否正在使用带有 org.glassfish.jersey 的JAX-RS 2.