В javadoc для Scanner.hasNextLine()
указано:
Возвращает true, если на входе этого сканера есть еще одна строка. Этот метод может блокироваться во время ожидания ввода. Сканер не продвигайтесь мимо каких-либо входных данных.
В каких условиях метод блокирует?