org.glassfish.jersey.internal.RuntimeDelegateImpl未找到

我正在为我的项目使用jersey并且要从字符串中解析URI。

UriBuilder.fromUri("http://localhost:8000").build(); 

代码很简单,但我在下面收到错误

 java.lang.ClassNotFoundException: org.glassfish.jersey.internal.RuntimeDelegateImpl 

似乎该程序找不到代表。 我已经导入了javax.ws.rs.core.UriBuilder并且拥有应该在我的构建路径中包含委托的jersey-common 2.0 。 但我仍然得到这个错误。

有人知道如何解决它吗? 谢谢!

如果您使用的是Maven,请使用以下依赖项:

  org.glassfish.jersey.core jersey-common 2.22.2 test  

对于Gradle,以下内容将起作用:

 testCompile 'org.glassfish.jersey.core:jersey-common:2.22.2' 

在我的情况下,问题是另一个名为javax.ws.rs-api-2.0.jar的 Jar使用

删除那个jar子解决了我的问题。

我用过的jar子:

    

针对Wildfly 10.1运行时开发我不想将Jersey引入我的构建中。 用Gradle我用过

 testRuntime "org.jboss.resteasy:resteasy-jaxrs:$versions.resteasy" 

resteasy版本是3.0.19.Final。 这个jar包含

 META-INF/services/javax.ws.rs.ext.RuntimeDelegate 

有一个条目

 org.jboss.resteasy.spi.ResteasyProviderFactory 
  org.glassfish.jersey.core jersey-common 2.26 test  

我遇到了Java 8和jersey-common 2.22.2的问题但2.26工作。