Существует ли механизм для распределения приложения с его собственным JRE?

Эти прекрасные люди являются моими пользователями: http://www.youtube.com/watch?v=o4MwTvtyrUQ

Если Вы не хотите наслаждаться видео, вот суть: мои пользователи не могут сказать между файлом и папкой между браузером и веб-сайтом.

Я должен создать веб-приложение Java (Tomcat или Причал) и развернуть его в как многие их компьютеры, Windows и Mac.

Вопрос: существует ли механизм для распределения приложения с его собственным JRE? (в мире Tcl существует starpacks и starkits, в мире Python существует py2exe и другие, это - идея). И также, действительно ли это законно? Я знаю, что VM является открытым исходным кодом, но я не соглашаюсь с библиотеками, и я знаю о Пути к классу GNU, но я не знаю, там ли все пакеты.

Я не хочу зависеть от установленного JRE или от пользователя, имеющего достаточно полномочий установить то. На Mac я не хочу зависеть от Apple (я должен был переключиться от Тигра на Snow Leopard только, чтобы иметь Java 1.6, я не могу поместить своих пользователей в то положение),

Любая информация значительно ценила.Спасибо! jb

править: Я задаюсь вопросом, могу ли я просто вставить папку JRE под своей папкой приложения. Это позволяется?

9
задан user179997 26 April 2010 в 09:55
поделиться

3 ответа

    To run your application, a user needs the J2SE Runtime Environment,
    which is freely available from Sun. Or, You can redistribute the 
    J2SE Runtime Environment for free with your application, according 
    to the terms of the Runtime Environment's license.

Из http://java.sun.com/j2se/1.5.0/jre/README

Я не читал мелкий шрифт, похоже, Sun намерена, чтобы люди распространяли JRE. Кроме того, существует множество продуктов (например, install4j), которые упрощают распространение JRE, так что это кажется законным.

Что касается остального, вы также можете связать tomcat со встроенной службой, чтобы ваше приложение запускалось автоматически, и создать ярлык на рабочем столе для вашего локального веб-приложения, чтобы пользователи не могли вводить ht tp: // локальный: 8080 / webapp. Существует множество установщиков FOSS (например, izpack), которые позволят вашим пользователям установить пакет и управлять созданием ярлыков на рабочем столе. Вы упомянули, что предпочитаете не использовать установщик, но даже разархивирование является своего рода установкой - ваши пользователи должны выбрать каталог, в который они имеют доступ для записи, и это ничем не отличается от полноценного установщика.

Но, учитывая возможности ваших пользователей, является ли локально установленное решение наиболее подходящим для них? Онлайн-решение может предложить более простое развертывание (например, запуск Java через Интернет или даже в виде апплета).

4
ответ дан 3 November 2019 в 00:00
поделиться

Мы используем Install4j на нашем рабочем месте. Он позаботится об установке и при необходимости установит JRE. Это не бесплатно. И, по крайней мере, версия, которую мы используем, не предоставляет пользователям Mac встроенной JRE. Но, насколько мне удалось выяснить, это было связано с некоторыми ограничениями со стороны Apple. Mac поставляются со своей собственной JRE, и если у вашего пользователя есть Mac, можно с уверенностью предположить, что у них установлена ​​JRE. Хотя, если JRE является более старой версией, чем та, которая вам нравится, им придется использовать Обновление программного обеспечения, чтобы проверить, доступна ли более новая версия, и установить ее.

6
ответ дан 3 November 2019 в 00:00
поделиться

В OS X вы практически застряли с тем, что предоставляет вам Apple. На других платформах нет необходимости запускать установщик JRE (что, как вы правильно заметили, ваши пользователи могут не уметь делать), достаточно просто положить папку JRE рядом с вашим приложением. Именно так поступают многие наши пользователи (в моей компании есть многоплатформенный установщик под названием InstallBuilder), и мы упаковали таким образом множество веб-приложений Java. Вы можете взглянуть на некоторые из них на сайте BitNami (все они бесплатны)

1
ответ дан 3 November 2019 в 00:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: