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

Erik Joelsson erik.joelsson at oracle.com
Fri Jun 26 07:34:34 UTC 2015

Hello Jan,

Build changes look good.


On 2015-06-25 18:25, Jan Lahoda wrote:
> Hello,
> Based on the feedback I've received so far, I've uploaded an updated 
> version of the patch:
> http://cr.openjdk.java.net/~jlahoda/8080679/webrev.01/full/
> Notable changes:
> -avoided the dependency on java.desktop and java.datatransfer
> -adjusted the native library build script as per Erik's recommendations
> -the module name is now changed to jdk.internal.le
> Any comments are welcome!
> Thanks,
>    Jan
> On 18.6.2015 16:25, Jan Lahoda 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 nashorn-dev mailing list