我正在尝试使用Java 9 maven项目中的孵化器中的HttpClient.我没有得到任何编译问题.该项目成功建立.但是当我尝试运行Main类时,它给了我以下异常:
Exception in thread "main" java.lang.NoClassDefFoundError: jdk/incubator/http/HttpClient
at java9.http_client.Main.main(Main.java:18)
Caused by: java.lang.ClassNotFoundException: jdk.incubator.http.HttpClient
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:185)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496)....
Run Code Online (Sandbox Code Playgroud)
我的代码只是一个模块信息文件和一个只调用google.com并试图读取响应的Main类:
module-info.java
module java9.http_client {
requires jdk.incubator.httpclient;
}
Run Code Online (Sandbox Code Playgroud)
Main.java
public final class Main {
public static void main(String[] args) {
try {
HttpClient client = HttpClient.newHttpClient();
URI httpURI = new URI("http://www.google.com/");
HttpRequest request = HttpRequest.newBuilder(httpURI).GET().build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandler.asString());
String responseBody = response.body();
int responseStatusCode = response.statusCode();
System.out.println(responseBody + "\n" + responseStatusCode);
} catch (URISyntaxException | IOException | …Run Code Online (Sandbox Code Playgroud)