Альтернатива запуска Java
Мы ищем альтернативу Java Web Start, которая эффективно делает то же самое, но лучше реализуется. У нас огромные проблемы с этим. У нас есть несколько офисов с рабочими столами XP, все они немного отличаются друг от друга, и пока лишь немногие из них работали без серьезных изменений. Проблемы состоят в том, что вы не играете с настройками прокси-сервера (использование прямого соединения в панели управления Java позволяет ему работать), отказываясь запускаться, когда установлены такие параметры, как "-Xmx", но работает нормально, когда их нет (до тех пор, пока он не запустится) нехватка памяти) и другие странные проблемы, которые мы не можем исправить.
Работать с веб-стартом - это именно то, что нам нужно, т.е. подключаться к серверу, на котором установлено приложение, загружать все, что изменилось, хранить кэш банок и т. Д. Другие команды здесь используют "clickonce" для своих приложений на C#, и это эффективно то же самое, но, кажется, меньше проблем.
Я убежден, что мы не единственные, кто сталкивался с этим, но поиск вокруг не показывает никаких альтернатив. Мы рассмотрели написание заглушки локального приложения, которое по сути является просто URLClassLoader, который загружает наше приложение по сети на лету, но, к сожалению, это слишком медленно из других офисов. У кого-нибудь есть идеи?
Спасибо
Обновить
В случае, если кому-то интересно узнать, что в итоге произошло, мы дали вебстарту еще месяц или около того, но продолжали сталкиваться с проблемами, поэтому мы внедрили нашу собственную версию. По сути, это просто заглушка с загрузчиком классов URL, который вы указываете на веб-сервер. Это < 200 строк кода, и он отлично работал в течение нескольких месяцев. Это не идеально, но пока кто-то не улучшит веб-запуск, мы будем придерживаться его.
Обновление 2018
Итак, спустя несколько лет я работаю над новым проектом с той же проблемой. Вместо того, чтобы писать нашу собственную реализацию веб-старта, на этот раз мы используем getdown. Мы обнаружили, что это значительное улучшение по сравнению с веб-стартом, и оно работает очень хорошо для нас.
5 ответов
Моя компания также испытывает проблемы с веб-запуском, особенно с обновлениями JRE 1.6 19 и 20. Наши проблемы связаны с предупреждением о безопасности смешанного кода. (все правильно подписано и проблема временная)
Во всяком случае, я наткнулся через разочарование по причине. Я еще не пробовал, но кажется многообещающим https://github.com/threerings/getdown/wiki
Я широко использую JWS в своей компании. ЕДИНСТВЕННАЯ реальная проблема, с которой я столкнулся в JWS, возникает, только когда вы пытаетесь запустить JWS из кеша, а компьютер вашего клиента только что обновился до более новой версии Java. Приложение не сможет запуститься с ошибкой "Невозможно запустить", "файл кэша не найден" или что-то подобное.
Для решения этой проблемы я использую два способа: либо я очищаю кеш и переустанавливаю приложение, либо просто снова нажимаю на URL с моего сайта (проще всего для моих пользователей). В обоих случаях проблема решается сама собой. Это объясняет, почему некоторые разработчики здесь никогда не видят эту проблему, скорее всего потому, что их пользователи всегда нажимают на URL вместо установленного модуля запуска.
В качестве обходного пути и в некоторых моих критически важных приложениях я использую в скрипте одно из следующих действий:
java -jar netx.jar -jnlp http://url/to/my/launch.jnlp
или же
Javaws http://url/to/my/launch.jnlp
где netx - сторонняя библиотека.
Это не самое красивое решение, но для меня это работает 100% времени.
Теперь, если бы я только мог понять, как получить ярлыки на рабочем столе, чтобы не попасть в ад... но это обсуждение в другой раз.
Я нахожу все ваши проблемы довольно странными. Я работал в течение определенного времени в компании, распространяющей торговое программное обеспечение с использованием JWS, и оно всегда работало очень хорошо. Рассматривали ли вы вопрос о неофициальных часто задаваемых вопросах по запуску веб-приложений на Java, прежде чем отказываться от всей технологии?
Мы также часто используем JWS, и с 1-6_19 года это действительно стало болью. Некоторые приложения запускались 1-6_19, другие - нет, затем мы обновляли до 1-6_20, и это было наоборот. Затем обновите до 1-6_21/2/3/4 и проблемы только меняются. Мы могли бы сдаться. Похоже, что команда разработчиков с тех пор, как Oracle вступил во владение, изменилась. В противном случае нет другого объяснения, чтобы сделать JWS хуже, чем лучше.
GetDown, кажется, тоже ненадежен. Я только что попробовал некоторые игровые сайты, которые они рекламируют как примеры в действии. Все они не смогли загрузить в мой Firefox. Может быть, виновата моя интеграция с Java в Firefox? У меня установлена 32-разрядная версия JRE 7 после 64-разрядной версии JDK 1.6.
В общем, проблемы Web Start и плохой пользовательский опыт часто связаны с тем, как Java была установлена на компьютере пользователя. В Windows я заметил, что если вы устанавливаете более старую версию Java после более новой (ожидая, что обе будут сосуществовать), у меня начнутся проблемы с запуском апплетов и приложений WS.