Java Web Start - как очистить кэш (или обновить приложение с точки зрения пользователя)

после загрузки JNLP в браузере он становится кэшированным, поэтому его не нужно загружать снова, что хорошо. Однако, как следствие, если я обновлю JAR, который использует JNLP, пользователи все равно увидят старую версию приложения, которая находится в кэше.

вы можете очистить кэш, запустив в терминале:

javaws -uninstall

но, очевидно, вы не могли ожидать от пользователей запуска этого, когда ваше обновление готово. Все должно быть более гладко.

одна идея-изменить имя файла jnlp, чтобы они загружали новый файл, например MyJWS-01.jnlp, чтобы включить номера версий.

есть ли другой способ?

2 ответов


обновить элемент используется для указания предпочтений для того, как обновления приложений должны обрабатываться Java Web Start."Значения атрибутов по умолчанию, похоже," для проверки обновлений до автоотключение" и"всегда скачать обновления без каких-либо подсказок.- Например,

<update check="timeout" policy="always"/>

вы получаете другой результат?


вы также можете использовать свойство jnlp name="jnlp.versionEnabled" и value="true" где вы можете ввести конкретный номер версии для jar, и таким образом новый будет доставлен, когда вы выпустите новую версию.