RFR: JDK-8080679: Include jline in JDK for Java and JavaScript REPLs

Jan Lahoda jan.lahoda at oracle.com
Thu Jul 2 11:41:56 UTC 2015

Hi Ben,

(Sorry for a late answer.)

Yes, this builds with JDK 9 compiler as part of the JDK build. JLine's 
own build is uses -source/-target 1.5, which is no longer supported in 
JDK 9 javac, so this may be one of the issues there.


On 18.6.2015 22:01, Ben Evans wrote:
> Hi,
> Has this been tested with a JDK 9 compiler?
> The last time I checked JLine wouldn't build with an OpenJDK 9 javac.
> Thanks,
> Ben
> On 18 Jun 2015 3:26 pm, "Jan Lahoda" <jan.lahoda at oracle.com
> <mailto:jan.lahoda at oracle.com>> wrote:
>     Hello,
>     I am proposing to add JLine 2.12.1 into the jdk repository for use
>     by the Java and Nashorn REPLs. Full patch is available here:
>     http://cr.openjdk.java.net/~jlahoda/8080679/webrev.00/full/
>     To aid the review, I've split this patch into to smaller patches:
>     -a patch that only adds unmodified jline sources at appropriate
>     places in the jdk repository:
>     http://cr.openjdk.java.net/~jlahoda/8080679/webrev.00/clean-jline/
>     -a patch that shows the additional changes I've done:
>     http://cr.openjdk.java.net/~jlahoda/8080679/webrev.00/additional/
>     This split is intended solely to simplify reviewing, my plan is to
>     integrate this as a single patch.
>     The main additional changes are:
>     -plugging the new module, jdk.jline, into the JDK build. Currently,
>     the JLine packages are exported only to jdk.scripting.nashorn (the
>     plan is to also export them to the future jdk.jshell module). (The
>     patch is not adding the dependency from jdk.scripting.nashorn to
>     jdk.jline, though - I expect that to be added when needed.)
>     -the sources are re-packaged from package "jline" to
>     "jdk.internal.jline"
>     -removing trailing whitespace, adding newlines at the end of the
>     files, encoding characters that are not ASCII
>     -avoiding the dependency on another library, jansi, by
>     reimplementing two elements that were used from the other library.
>     These are mainly the changes in WindowsTerminal and
>     ConsoleReader.java. This also includes the WindowsTerminal.cpp
>     native library. The native part is heavily inspired by:
>     http://cr.openjdk.java.net/~sherman/rl/src/java.base/windows/native/libjava/Console_md.c.html
>     As I am not experienced in native programming, comments to the
>     native part would be particularly useful.
>     -changes to resolve javac warnings in JLine.
>     -tests for some of the added functionality.
>     Any comments are welcome!
>     Thanks,
>          Jan

More information about the core-libs-dev mailing list