Em Java, qual é a melhor maneira de capturar um pressionamento de tecla <tab>?

Estou tendo problemas para capturar o pressionamento de tecla <tab> no meu aplicativo de linha de comando Java. Usando System.in.read () Parece que não recebo nada ao pressionar a tecla tab. Qual é a melhor maneira de abordar isso?

Para contextualizar, estou tentando permitir que um usuário pressione a tecla tab no meio do comando para que ele preencha automaticamente o comando (como você pode fazer em um shell bash). Estou aberto a sugestões se houver abordagens melhores para conseguir isso (talvez usar System.in.read () não seja o melhor ângulo para abordar isso?).

questionAnswers(3)

yourAnswerToTheQuestion