Skip to content

Startup exception : Unable to find terminal provider #1152

@ouyang7923

Description

@ouyang7923

Although there are exceptions, the program can be started and used normally, but so many errors are confusing

errors:

2024-12-02 12:06:03.603 |-DEBUG [main] com.test.SpringShellMain [51] -| Running with Spring Boot v3.3.5, Spring v6.1.14
2024-12-02 12:06:03.604 |-INFO  [main] com.test.SpringShellMain [654] -| No active profile set, falling back to 1 default profile: "default"
2024-12-02 12:06:04.025 |-DEBUG [main] org.jline [115] -| Unable to load ffm provider: 
java.io.IOException: Unable to find terminal provider ffm
	at org.jline.terminal.spi.TerminalProvider.load(TerminalProvider.java:74)
	at org.jline.terminal.TerminalBuilder.checkProvider(TerminalBuilder.java:748)
	...
2024-12-02 12:06:04.027 |-DEBUG [main] org.jline [115] -| Unable to load jni provider: 
java.io.IOException: Unable to find terminal provider jni
	at org.jline.terminal.spi.TerminalProvider.load(TerminalProvider.java:74)
	at org.jline.terminal.TerminalBuilder.checkProvider(TerminalBuilder.java:748)
	at org.jline.terminal.TerminalBuilder.getProviders(TerminalBuilder.java:715)
...
2024-12-02 12:06:04.027 |-DEBUG [main] org.jline [115] -| Unable to load jansi provider: 
java.io.IOException: Unable to find terminal provider jansi
	at org.jline.terminal.spi.TerminalProvider.load(TerminalProvider.java:74)
	at org.jline.terminal.TerminalBuilder.checkProvider(TerminalBuilder.java:748)
	at org.jline.terminal.TerminalBuilder.getProviders(TerminalBuilder.java:717)
...
2024-12-02 12:06:04.027 |-DEBUG [main] org.jline [115] -| Unable to load jna provider: 
java.io.IOException: Unable to find terminal provider jna
	at org.jline.terminal.spi.TerminalProvider.load(TerminalProvider.java:74)
	at org.jline.terminal.TerminalBuilder.checkProvider(TerminalBuilder.java:748)
	at org.jline.terminal.TerminalBuilder.getProviders(TerminalBuilder.java:719)
	...
2024-12-02 12:06:04.032 |-DEBUG [main] org.jline [115] -| ExecTerminalProvider failed 'test -t' for Output
java.io.IOException: Cannot run program "test": CreateProcess error=2, 系统找不到指定的文件。
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1143)
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1073)
	at org.jline.terminal.impl.exec.ExecTerminalProvider.isPosixSystemStream(ExecTerminalProvider.java:135)
	...
Caused by: java.io.IOException: CreateProcess error=2, 系统找不到指定的文件。
	at java.base/java.lang.ProcessImpl.create(Native Method)
	at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:499)
	at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:158)
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1110)
	... 87 common frames omitted
2024-12-02 12:06:04.052 |-DEBUG [main] org.jline [115] -| Available providers: exec
2024-12-02 12:06:04.053 |-DEBUG [main] org.jline [115] -| ExecTerminalProvider failed 'test -t' for Input
java.io.IOException: Cannot run program "test": CreateProcess error=2, 系统找不到指定的文件。
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1143)
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1073)
	at org.jline.terminal.impl.exec.ExecTerminalProvider.isPosixSystemStream(ExecTerminalProvider.java:135)
	at org.jline.terminal.impl.exec.ExecTerminalProvider.isSystemStream(ExecTerminalProvider.java:121)
	...
Caused by: java.io.IOException: CreateProcess error=2, 系统找不到指定的文件。
	at java.base/java.lang.ProcessImpl.create(Native Method)
	at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:499)
	at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:158)
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1110)
	... 105 common frames omitted
2024-12-02 12:06:04.056 |-DEBUG [main] org.jline [115] -| ExecTerminalProvider failed 'test -t' for Output
java.io.IOException: Cannot run program "test": CreateProcess error=2, 系统找不到指定的文件。
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1143)
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1073)
	at org.jline.terminal.impl.exec.ExecTerminalProvider.isPosixSystemStream(ExecTerminalProvider.java:135)
	...
Caused by: java.io.IOException: CreateProcess error=2, 系统找不到指定的文件。
	at java.base/java.lang.ProcessImpl.create(Native Method)
	at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:499)
	at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:158)
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1110)
	... 105 common frames omitted
2024-12-02 12:06:04.059 |-DEBUG [main] org.jline [115] -| ExecTerminalProvider failed 'test -t' for Error
java.io.IOException: Cannot run program "test": CreateProcess error=2, 系统找不到指定的文件。
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1143)
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1073)
	at org.jline.terminal.impl.exec.ExecTerminalProvider.isPosixSystemStream(ExecTerminalProvider.java:135)
	at org.jline.terminal.impl.exec.ExecTerminalProvider.isSystemStream(ExecTerminalProvider.java:121)
...
Caused by: java.io.IOException: CreateProcess error=2, 系统找不到指定的文件。
	at java.base/java.lang.ProcessImpl.create(Native Method)
	at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:499)
	at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:158)
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1110)
	... 105 common frames omitted
2024-12-02 12:06:04.059 |-WARN  [main] org.jline [115] -| input is tty: false
2024-12-02 12:06:04.059 |-WARN  [main] org.jline [115] -| output is tty: false
2024-12-02 12:06:04.059 |-WARN  [main] org.jline [115] -| error is tty: false
2024-12-02 12:06:04.059 |-WARN  [main] org.jline [115] -| Creating a dumb terminal
java.lang.IllegalStateException: Unable to create a terminal
	at org.jline.terminal.TerminalBuilder.doBuild(TerminalBuilder.java:459)
	at org.jline.terminal.TerminalBuilder.build(TerminalBuilder.java:427)
	at org.springframework.shell.boot.JLineShellAutoConfiguration.terminal(JLineShellAutoConfiguration.java:51)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	...
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1363)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1352)
	at com.test.SpringShellMain.main(SpringShellMain.java:24)
	Suppressed: java.io.IOException: Unable to find terminal provider ffm
		at org.jline.terminal.spi.TerminalProvider.load(TerminalProvider.java:74)
		at org.jline.terminal.TerminalBuilder.checkProvider(TerminalBuilder.java:748)
		at org.jline.terminal.TerminalBuilder.getProviders(TerminalBuilder.java:713)
		at org.jline.terminal.TerminalBuilder.doBuild(TerminalBuilder.java:460)
		... 81 common frames omitted
	Suppressed: java.io.IOException: Unable to find terminal provider jni
		at org.jline.terminal.spi.TerminalProvider.load(TerminalProvider.java:74)
		at org.jline.terminal.TerminalBuilder.checkProvider(TerminalBuilder.java:748)
		at org.jline.terminal.TerminalBuilder.getProviders(TerminalBuilder.java:715)
		at org.jline.terminal.TerminalBuilder.doBuild(TerminalBuilder.java:460)
		... 81 common frames omitted
	Suppressed: java.io.IOException: Unable to find terminal provider jansi
		at org.jline.terminal.spi.TerminalProvider.load(TerminalProvider.java:74)
		at org.jline.terminal.TerminalBuilder.checkProvider(TerminalBuilder.java:748)
		at org.jline.terminal.TerminalBuilder.getProviders(TerminalBuilder.java:717)
		at org.jline.terminal.TerminalBuilder.doBuild(TerminalBuilder.java:460)
		... 81 common frames omitted
	Suppressed: java.io.IOException: Unable to find terminal provider jna
		at org.jline.terminal.spi.TerminalProvider.load(TerminalProvider.java:74)
		at org.jline.terminal.TerminalBuilder.checkProvider(TerminalBuilder.java:748)
		at org.jline.terminal.TerminalBuilder.getProviders(TerminalBuilder.java:719)
		at org.jline.terminal.TerminalBuilder.doBuild(TerminalBuilder.java:460)
		... 81 common frames omitted
2024-12-02 12:06:04.081 |-DEBUG [main] org.jline [115] -| Using terminal DumbTerminal
2024-12-02 12:06:04.172 |-INFO  [main] com.test.SpringShellMain [56] -| Started SpringShellMain in 0.794 seconds (process running for 1.25)
shell:>2024-12-02 12:06:04.176 |-DEBUG [JLine terminal non blocking reader thread] org.jline [115] -| NonBlockingInputStream start


shell:>help 
AVAILABLE COMMANDS

Built-In Commands
       help: Display help about available commands
       stacktrace: Display the full stacktrace of the last error.
       clear: Clear the shell screen.
       quit, exit: Exit the shell.
       history: Display or save the history of previously run commands
       version: Show version info
       script: Read and execute commands from a file.

Metadata

Metadata

Assignees

No one assigned

    Labels

    status/need-triageTeam needs to triage and take a first look

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions