The jdk.incubator.httpclient module not found in Java11
Asked Answered
C

1

9

Using the early access build for JDK/11 to compile an existing code based on Java-9 which was using a VM argument

--add-modules jdk.incubator.httpclient

to resolve the HTTP/2 client incubator module now ends up with a compilation error

Module not found: jdk.incubator.httpclient

Java version details :-

java 11-ea 2018-09-25
Java(TM) SE Runtime Environment 18.9 (build 11-ea+11)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11-ea+11, mixed mode)
Cismontane answered 1/5, 2018 at 19:36 Comment(0)
C
17

With the standardization of the HTTP Client API, the incubated APIs are now removed.

The module name and the package name of the standard API will be java.net.http which can now be used as -

module <yourModuleName> {
    requires java.net.http;
}

Also, adding to the tally, the applications, frameworks(like Maven, Gradle etc) or IDEs relying on the classpath would no more need to set the following command-line option to request the incubator module to be resolved:

--add-modules jdk.incubator.httpclient    OR      --add-modules java.net.http

Since being a standard module the java.net.http module shall be resolved by default.


Edit:- I've jotted down the migration steps required for a transition from incubation to the standard implementation of the HTTP/2 client @ Medium.

Cismontane answered 1/5, 2018 at 19:36 Comment(1)
I would argue that the best option is through the module strategy since getting incubator features to work in IDEA with Gradle / Maven is always tricky. Thanks for the help!Sesqui

© 2022 - 2024 — McMap. All rights reserved.