私は単純なコンソールを作成しようとしていますが、これを見つけました: 「コマンド」コンソールを作成する
私はそれを試してみることにしました、そしてそれは私の必要性にぴったりだと思います. 唯一の問題は、BufferedReader がブロックされているため、ユーザーからユーザー入力を取得できないように見えることです。私は BufferedReader にも JConsole にも精通していないので、何を修正する必要があるかわかりません。
コードの私のバージョンは次のとおりです。
import java.io.*;
import bsh.util.*;
import java.awt.*;
public class CLI extends JConsole
{
public CLI()
{
Font font = new Font("Consolas", Font.BOLD, 12);
setFont(font);
new InputThread().start();
}
private class InputThread extends Thread
{
BufferedReader input = new BufferedReader(getIn());
String newline = System.getProperty("line.separator");
String line = "";
String prompt = "$ ";
public void run()
{
try
{
do
{
print(prompt, Color.RED);
line = input.readLine();
print("You typed: " + line + newline, Color.BLUE);
} while (!line.equalsIgnoreCase("quit"));
input.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
}