Почему иногда Java не запрашивает новые версии файлов jar?

StackOverflow https://stackoverflow.com/questions/951215

Вопрос

Каждый раз, когда мы обновляем наше Java-приложение (Java-клиент и Java-сервер), у нас возникают проблемы, с которыми сталкиваются некоторые клиенты.1% - 2% не загружают новые jar-файлы.Это происходит с апплетами, а также с Java Web Start.Если вы очистите кэш Java, все будет работать правильно.

Есть идеи, почему Java не проверяет наличие новых файлов jar при каждом запуске?

Это было полезно?

Решение

Это может быть проблематично решить, но есть простой обходной путь.Вместо того, чтобы полагаться на правильное обновление кэша, просто убедитесь, что имена файлов JAR включают номер версии/сборки приложения.Файлы JAR для новой версии апплета будут эффективно размещаться на другом URL-адресе (вам также необходимо изменить веб-страницу начальной загрузки).

Другие советы

Я был там, и единственное решение, которое на 100% гарантированно будет работать, - это иметь другой путь/URL-адрес к вашим ресурсам (банкам, изображениям и т. д.).Никто не может гарантировать, что в механизме кэширования не может быть ошибок (если вы посмотрите список изменений JDK каждые 2-3 выпуска, там что-то связано с механизмом кэширования jar-файлов).

Так что продолжайте (просто добавьте время последнего изменения в виде строки в конце URL-адреса jar), и у вас не возникнет никаких проблем:

Бывший : http://myserver/applet/codebase/your_jar.jar?v=2487387543434 и в следующей версии это будет http://myserver/applet/codebase/your_jar.jar?v=343438534545455 <- это время последнего изменения jar.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top