Это может быть сделано с помощью javaWS (Ref: Java Web Services), где вы используете архитектуру JNLP. В основном, вы указываете (как XML), что такое версия JRE, вам нужно запустить вашу прикладную программу, какие ресурсы (файлы jar) нужно клиенту для проверки даты и загрузки, если доступна более новая версия, какой класс содержит основную (), чтобы начать выполнение и т. д. Веб-браузер проверяет, установлена ли требуемая версия Java, а если нет, загружает ее и выполнение продолжается.
Если я правильно помню, Sun использовала для распространения Javascript для автоматической загрузки, чтобы она была бесплатной (сценарий назывался «deployjava.js», сообщите мне, хотите ли вы отредактированную версию), и вы можете редактировать его для некоторой настройки (например, используйте графический файл для использования в качестве кнопки для активации проверки загрузки/проверки).
Это работало для нас через Windows XP и Vista, но Windows 7 сломала его. Могут быть проблемы с внутренней безопасностью - в то время (JDK-1.6.13-20 или около того) Java захотела запустить свой собственный процесс, но IE не допустил этого - и вам пришлось пройти через кучу обручей, чтобы отключить что-то на JavaWS, чтобы новый процесс не запускался и т. Д., Не очень практично, если у вас есть клиенты, использующие ваше программное обеспечение. Через некоторое время стало так больно, что мы полностью свалили архитектуру.
Чтобы ответить на вопрос, да, это возможно, но реализации могут быть ошибочными и зависящими от браузера/системы. Если вы хотите пройти этот маршрут, оцените системы JNLP/JavaWS и удачи вам. Отправлено, - M.S.
Я не уверен, что Firefox делает ... Я смотрел веб-сайт http://en.wikipedia.org/wiki/Java_Web_Start, но это был бы равный беспорядок: 1 – Andy