Java Web Start - очистка кеша (или обновление приложения с точки зрения пользователя)
После того, как JNLP загрузится в браузере, он будет кэшироваться, поэтому его не нужно загружать снова, что хорошо. Однако, как следствие, если я обновляю JAR, который использует JNLP, пользователи по-прежнему будут видеть старую версию приложения, находящееся в кеше.
Вы можете очистить кеш, запустив это в терминале:
javaws -uninstall
Но, очевидно, вы не могли ожидать от пользователей запускать это, когда ваше обновление будет готово. Он должен быть более плавным.
Одна идея - изменить имя файла jnlp, чтобы они загружали новый файл, например MyJWS-01.jnlp, для включения номеров версий.
Есть ли другой способ?
Ответы
Ответ 1
" элемент обновления используется для указания предпочтений для того, как обрабатывать обновления приложений Java Web Start
". Значения атрибутов по умолчанию, похоже, будут "проверять наличие обновлений до тайм-аута" и "всегда загружать обновления без каких-либо подсказок". Например,
<update check="timeout" policy="always"/>
Вы получаете другой результат?
Ответ 2
Вы также можете использовать свойство jnlp name="jnlp.versionEnabled"
и value="true"
, где вы можете ввести конкретный номер версии для jar, и таким образом новый будет доставлен при выпуске новой версии.