NoClassDefFoundError: javax/ws/rs/client/ClientBuilder

cri*_*gua 6 rest client javax

我正在尝试创建一个非常简单的 Rest Client。我正在使用:Netbeans 8 maven 项目

依赖:

    <dependencies>
        <dependency>
            <groupId>javax.ws.rs</groupId>
            <artifactId>javax.ws.rs-api</artifactId>
            <version>2.1-m01</version>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jersey.core</groupId>
            <artifactId>jersey-client</artifactId>
            <version>2.24.1</version>
        </dependency>
        <dependency>
            <groupId>org.jboss.resteasy</groupId>
            <artifactId>resteasy-client</artifactId>
            <version>3.0.16.Final</version>
        </dependency>
    </dependencies>
Run Code Online (Sandbox Code Playgroud)

和代码:

public class Client_con {

public static final String BASE_URI = "http://localhost:8000/test";
public static final String PATH_NAME = "/h";
public static void main (String [] args){

   Client client = ClientBuilder.newClient();

    //WS text get
    WebTarget target = client.target(BASE_URI).path(PATH_NAME);
    String res = target.request().get().readEntity(String.class);
    System.out.println(res);
}
}
Run Code Online (Sandbox Code Playgroud)

但我总是得到同样的错误:

  Exception in thread "main" java.lang.NoClassDefFoundError: 
   javax/ws/rs/client/ClientBuilder
      at ah.consumer.Client_con.main(Client_con.java:38)
  Caused by: java.lang.ClassNotFoundException: 
    javax.ws.rs.client.ClientBuilder
       at java.net.URLClassLoader.findClass(Unknown Source)
       at java.lang.ClassLoader.loadClass(Unknown Source)
       at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
       at java.lang.ClassLoader.loadClass(Unknown Source)
       ... 1 more
Run Code Online (Sandbox Code Playgroud)

我不知道我能做什么...

Kau*_*pur 4

您使用
<version>2.1-m01</version>
它有什么具体原因吗?通常建议使用稳定的最终版本。尝试使用这个版本。

<dependency>
    <groupId>javax.ws.rs</groupId>
    <artifactId>javax.ws.rs-api</artifactId>
    <version>2.1</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

如果您想使用该-m01版本,您可以Maven cleanMaven install。如果未正确下载相应的 jar 文件,也会出现此错误。

还要确保您导入了正确的类。
import javax.ws.rs.client.ClientBuilder;

希望这可以帮助!