Java File.setWritable () и перестала работать правильно после JDK 6u18



Answers

Question

У нас есть приложение Java с определенным модулем, который проверяет, является ли временный каталог «доступным для записи» перед выполнением его функции. Чтобы проверить это, у нас есть тест JUnit, который создает новый каталог, использует метод класса Java File setWritable(false) чтобы сделать каталог «недоступным для записи», затем передает этот каталог тестируемому модулю и ожидает возврата IllegalArgumentException , Все это хорошо работало в течение длительного времени под JDK 6u18.

Сегодня я обновил версию JDK до JDK 6u24 (текущая версия с сайта Sun на сегодняшний день). Этот модульный тест только что начался с нового JDK. Я спросил в своей команде и выяснил, что кто-то еще пытался запустить JDK 6u23 на своей машине некоторое время назад и имел ту же проблему с тем же тестом JUnit (и только с этим тестом - все остальное отлично работает).

У кого-нибудь еще возникли проблемы с setWritable() после обновления до более нового JDK? Любая идея, как это решить?

Прежде чем вы спросите, я также попытался использовать метод setReadonly() в качестве альтернативы, но получаю тот же результат.




Links