问题描述:
Java 12 Shell无法在Windows上正确读取键盘输入。
解答:
在Windows系统上,Java 12 Shell存在读取键盘输入的问题。这个问题可以通过以下方式来解决:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
System.out.println("你输入的是:" + input);
}
}
在上述示例中,我们使用Scanner类从键盘读取输入,并将其打印出来。这种方式能够正确读取键盘输入。
jline3是一个Java库,提供了跨平台的控制台交互功能。可以通过以下方式使用jline3来解决问题:
首先,需要将jline3库添加到项目的依赖中,例如使用Maven添加以下依赖:
<dependency>
<groupId>org.jline</groupId>
<artifactId>jline</artifactId>
<version>3.19.0</version>
</dependency>
然后,可以使用jline3提供的ConsoleReader类来读取键盘输入:
import org.jline.reader.*;
import org.jline.reader.impl.completer.*;
import org.jline.terminal.*;
import org.jline.utils.*;
public class Main {
public static void main(String[] args) {
Terminal terminal = TerminalBuilder.terminal();
LineReader lineReader = LineReaderBuilder.builder()
.terminal(terminal)
.completer(new FileNameCompleter())
.build();
String input = lineReader.readLine("请输入:");
System.out.println("你输入的是:" + input);
}
}
在上述示例中,我们使用ConsoleReader类从键盘读取输入,并将其打印出来。jline3库能够解决Java 12 Shell在Windows上读取键盘输入的问题。
希望这些解决方案能够帮助您解决Java 12 Shell无法在Windows上正确读取键盘输入的问题。
相关链接:
领取专属 10元无门槛券
手把手带您无忧上云