То, что происходит здесь, происходит следующим образом: вызов newfile()
или FileUtils.readLines()
вызывает IOException.
Это обнаруживается по адресу:
} catch (IOException e) {
revision = "" + e.getCause();
}
и устанавливает значение revision = значениеe.getCause()
с префиксом пустой строки.
e.getCause()
возвращает текст null , что заставляет меня поверить, что исключение выдается FileUtils.readLines()
.
Проверьте это, изменив revision = "" + e.getCause();
на revision = "XXX->" + e.getCause();
, после чего, я ожидаю, вы обнаружите, что значение revision после вызова равно = "XXX-> null".
IOException с причиной = null выбрасывается, потому что файл data/build_info.properties
не может бытьрасположен.
Таким образом, вам нужно проверить значение вашего текущего рабочего каталога, когда вы запускаете этот код, и убедиться, что data/build_info.properties
может быть разрешена относительно этого пути.