Я создаю систему обновлений, в которой мне нужно иметь возможность заменять ссылочный файл jar запущенного приложения во время выполнения.Тем не менее, я сталкиваюсь с проблемами блокировки файлов в Windows, когда пытаюсь выполнить функции утилиты файлов на банке, такие как 'setLastModified'.
После некоторого поиска в Google я нашел этот фрагмент ...
В моих исследованиях я обнаружил, что стандартная реализация ClassLoader никогда не закрывает файл jar после его открытия.Он также загружает ресурсы только из файла JAR по мере необходимости.Поэтому в любой конкретный момент в jar-файле могут быть классы, которые не были загружены в память.Очевидно, что если вы удалите файл JAR из-под ClassLoader, и он попытается найти ресурс в отсутствующем файле, вы получите IOException по крайней мере.
Кто-нибудьесть какие-либо ссылки на информацию об этом или обойти эту проблему?
Спасибо.