Skip to content

Diagnostic

Guillaume Nodet edited this page May 12, 2025 · 2 revisions

ℹ️ Info: The JLine wiki content has been integrated into the new web site. The wiki won't be updated anymore.

When raising an issue or trying to understand what's going wrong when creating a terminal, you may want, especially when dealing with system terminals, to run the diagnosis tool below and paste the output in the bug entry.

JLine

java -cp jline-3.26.1.jar org.jline.terminal.impl.Diag

will output full diagnosis for JLine. You may want to add some dependencies if you want specific providers to be loaded.

Jansi

java -jar jansi-3.26.1.jar

will output full diagnosis for JLine and Jansi.

Output example

System properties
=================
os.name =         Mac OS X
OSTYPE =          null
MSYSTEM =         null
PWD =             /Users/gnodet/work/git/jline3
ConEmuPID =       null
WSL_DISTRO_NAME = null
WSL_INTEROP =     null

OSUtils
=================
IS_WINDOWS = false
IS_CYGWIN =  false
IS_MSYSTEM = false
IS_WSL =     false
IS_WSL1 =    false
IS_WSL2 =    false
IS_CONEMU =  false
IS_OSX =     true

FFM Support
=================
FFM support not available: java.io.IOException: Unable to load terminal provider ffm: null

JnaSupport
=================
JNA support not available: java.io.IOException: Unable to load terminal provider jna: null

Jansi2Support
=================
Jansi 2 support not available: java.io.IOException: Unable to load terminal provider jansi: null

JniSupport
=================
StdIn stream =    true
StdOut stream =   true
StdErr stream =   true
StdIn stream name =     /dev/ttys007
StdOut stream name =    /dev/ttys007
StdErr stream name =    /dev/ttys007
Terminal size: Size[cols=184, rows=47]
The terminal seems to work: terminal org.jline.terminal.impl.PosixSysTerminal with pty org.jline.terminal.impl.jni.osx.OsXNativePty

Exec Support
=================
StdIn stream =    true
StdOut stream =   true
StdErr stream =   true
StdIn stream name =     /dev/ttys007
StdOut stream name =    /dev/ttys007
StdErr stream name =    /dev/ttys007
Terminal size: Size[cols=184, rows=47]
The terminal seems to work: terminal org.jline.terminal.impl.PosixSysTerminal with pty org.jline.terminal.impl.exec.ExecPty

Clone this wiki locally