Ошибка сканера с nextInt () [дубликат]

На этот вопрос уже есть ответ здесь:

Как использовать java.util.Scanner, чтобы правильно прочитать пользовательский ввод из System.in и действовать на него? 1 ответ

Я пытаюсь использовать сканер для получения int с клавиатуры, но я получаю следующую ошибку:

Exception in thread "main" java.util.NoSuchElementException
    at java.util.Scanner.throwFor(Scanner.java:907)
    at java.util.Scanner.next(Scanner.java:1530)
    at java.util.Scanner.nextInt(Scanner.java:2160)
    at java.util.Scanner.nextInt(Scanner.java:2119)
    at TableReader.mainMenu(TableReader.java:122)
    at TableReader.main(TableReader.java:76)

Это то, что у меня есть. Это не зависит от остальной части моей программы, я нене понимаю, почему это не такт работает. Он объявляется в методе, который вызывается в цикле while, если это помогает.

    // scan for selection
    Scanner s = new Scanner(System.in);
    int choice = s.nextInt();           // error occurs at this line
    s.close();

Я прошел через отладчик и сузил ошибку до:

Фатальная ошибка была обнаружена средой выполнения Java: SIGSEGV (0xb) при pc = 0xb6bdc8a8, pid = 5587, tid = 1828186944

Версия JRE: 7.0_07-b30 Java VM: виртуальная машина сервера OpenJDK (смешанный режим 23.2-b09 linux-x86) Проблемный кадр: V [libjvm.so + 0x4258a8] java_lang_String :: utf8_length (oopDesc *) + 0x58

Не удалось записать дамп ядра. Основные дампы были отключены. Чтобы включить дамп ядра, попробуйтеulimit -c безлимитный " перед повторным запуском Java

Ответы на вопрос(1)

Ваш ответ на вопрос