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

Ståle W Pedersen spederse at redhat.com
Sat Jul 4 23:27:19 UTC 2015

hi, sorry, im a bit late to this discussion, i wasnt aware of any
interest for adding jline2 to the jdk until late this week.
im working on a project called æsh/aesh: https://github.com/aeshell/aesh
its another java console project derived from jline/jline2. it started
as an extension/fork of jline2 and evolved into a separate project.

im not quite sure what the reason behind choosing jline2 for the jdk,
but i just wanted to give some info on æsh and what it does compared to

æsh has all the same functionalities as jline2 and has a number of
additional features:
- history (search, persistence)
- undo/redo
- paste buffer
- redirect/pipeline
- alias

jline2 has several bugs regarding input that is resolved in æsh.

one of the bigger differences between jline2 and æsh is that æsh isnt
locking in the same way as jline2, but rather has a callback when input
is given. this give better flexibility for the user when creating

perhaps the biggest difference is that æsh provides two apis for the
developer. one is more low-level and similar to jline2:

plus a high level api that æsh provides for the developer to create commands. 

in this example we create a ls command that will automatically complete
filenames/directories and inject the values into the list field. this it
just a very simple example, the api supports

we added this api because we noticed that the developers needed to
write a lot of code to parse user input. with this api they can
focus on creating commands and not parse for input data.

if there is any interest in using æsh in the jdk we would do whatever we
can to help you integrate it. æsh has evolved fairly
quickly and tries to resolve any bugs/issues as quickly as possible. it
is also supported by red hat so we can promise that this project will
not be abandoned any time soon.

regards, ståle

More information about the core-libs-dev mailing list