Как я могу исправить этот тихий сбой при записи файлов с использованием Java IO? - PullRequest
2 голосов
/ 30 ноября 2009

У меня странная проблема с commons-io / java-io. По сути, создание моего файла происходит без каких-либо исключений.

FileUtils.writeLines(file, collectionOfStrings);

Я просмотрел код общего фонда, чтобы попытаться понять, почему это происходит молча, но для меня это выглядит так, как будто это должно быть исключение. (См. Строки 1338, 163 в FileUtils.java и строку 927 в IOUtils.java .)

Чтобы попытаться исправить эту проблему, я добавил эту проверку в код после предыдущей строки,

if (!file.exists()) {
    logger.warn("File creation failed.");
}

Однако, даже если создание файла не удается, этот блок не вводится.

Я в своем уме с этим, может кто-нибудь с большим опытом работы с Java IO поможет мне?

1 Ответ

1 голос
/ 30 ноября 2009

Я немного смущен, но я забыл включить jar commons-io в свое веб-приложение. В результате возникает проблема времени выполнения.

Моя настоящая проблема заключалась в том, что java.lang.NoClassDefFoundError: org / apache / commons / io / FileUtils сообщение не входило в мой журнал, потому что NoClassDefFoundError НЕ является исключением , здесь прекрасная архитектура от Sun.

Когда произошла ошибка NoClassDefFoundError, остальная часть кода не была выполнена, включая проверку file.exists ().

...