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

Jan Lahoda jan.lahoda at oracle.com
Thu Jun 18 14:25:15 UTC 2015


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:

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:

-a patch that shows the additional changes I've done:

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:
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!


More information about the nashorn-dev mailing list