Essa é a saída do console, com meus inputs e os outputs do programa. E no final após fazer a importação ele está dando o seguinte erro, como aparece no texto abaixo: java.util.NoSuchElementException
Digite o id ou nome do abrigo: 1 Digite o nome do arquivo CSV: pets.csv Pet cadastrado com sucesso: Rex Pet cadastrado com sucesso: Mia Pet cadastrado com sucesso: Luna Pet cadastrado com sucesso: Felix Pet cadastrado com sucesso: Bella Pet cadastrado com sucesso: Lucy Pet cadastrado com sucesso: Apollo Pet cadastrado com sucesso: Leopoldo
DIGITE O NÚMERO DA OPERAÇÃO DESEJADA: 1 -> Listar abrigos cadastrados 2 -> Cadastrar novo abrigo 3 -> Listar pets do abrigo 4 -> Importar pets do abrigo 5 -> Sair java.util.NoSuchElementException: No line found at java.base/java.util.Scanner.nextLine(Scanner.java:1651) at br.com.alura.AdopetConsoleApplication.main(AdopetConsoleApplication.java:20)
Process finished with exit code 0
Este é o meu código, o que pode estar errado?
package br.com.alura;
import java.util.Scanner;
public class AdopetConsoleApplication {
public static void main(String[] args) {
CommandExecutor executor = new CommandExecutor();
System.out.println("##### BOAS VINDAS AO SISTEMA ADOPET CONSOLE #####");
try {
int opcaoEscolhida = 0;
while (opcaoEscolhida != 5) {
System.out.println("\nDIGITE O NÚMERO DA OPERAÇÃO DESEJADA:");
System.out.println("1 -> Listar abrigos cadastrados");
System.out.println("2 -> Cadastrar novo abrigo");
System.out.println("3 -> Listar pets do abrigo");
System.out.println("4 -> Importar pets do abrigo");
System.out.println("5 -> Sair");
String textoDigitado = new Scanner(System.in).nextLine();
opcaoEscolhida = Integer.parseInt(textoDigitado);
if (opcaoEscolhida == 1) {
executor.executeCommand(new ListarAbrigoCommand());
} else if (opcaoEscolhida == 2) {
executor.executeCommand(new CadastrarAbrigoCommand());
} else if (opcaoEscolhida == 3) {
executor.executeCommand(new ListarPetsDoAbrigoCommand());
} else if (opcaoEscolhida == 4) {
executor.executeCommand(new ImportarPetsDoAbrigoCommand());
} else if (opcaoEscolhida == 5) {
break;
} else {
System.out.println("NÚMERO INVÁLIDO!");
opcaoEscolhida = 0;
}
}
System.out.println("Finalizando o programa...");
} catch (Exception e) {
e.printStackTrace();
}
}
}