Установка Java-сервера на Windows 32-битных системах - PullRequest
3 голосов
/ 07 декабря 2009

Я пытаюсь связать Java как часть Java-продукта, который должен быть установлен в один клик без вывода сообщений и возникают некоторые проблемы:

Моя установка имеет следующие требования: Не требует молчания и не требует ввода данных пользователем или действия, кроме двойного щелчка по установочному файлу (без настройки и шагов после установки) Должен настроить java так, чтобы JAVA_HOME указывал на установку Java SE с сервером jvm

Это вообще возможно сделать в системе win32 с установщиками Sun Java? Я знаю, что по умолчанию JRE не является сервером JVM. Но даже при установке jdk публичный jre, который установлен (и сопоставлен с JAVA_HOME), не содержит сервер jvm. В собственном файле README от Sun ( Sun README ) они предлагают скопировать файлы:

JRE \ Bin \ сервер \ На платформах Microsoft Windows JDK включает в себя как виртуальная машина сервера Java HotSpot ™ и виртуальная машина клиента Java HotSpot. Тем не менее, среда выполнения Java SE для Microsoft Windows Платформа включает в себя только Java HotSpot Client VM. Желающих использовать виртуальную машину Java HotSpot Server с Java SE Runtime Среда может скопировать папку JDK jre \ bin \ server в каталог bin \ server в среде выполнения Java SE.

Но это решение сложно изящно автоматизировать при автоматической установке. Должен быть лучший способ сделать это, не переупаковывая весь дистрибутив Java. Кто-нибудь сталкивался с такой же проблемой и придумал более элегантное решение?

Ответы [ 2 ]

1 голос
/ 05 июля 2011

Создайте свой собственный установщик.

Я использую компилятор inno setup, хорошо работает для моих целей. Если вам нужны записи реестра, вы можете экспортировать их, включить их в установщик, включить файлы, и немного изменить кое-где, и все готово. Тихий установщик, который настраивает вещи в соответствии с точными спецификациями, которые вам нужны.

Он поставляется с простым в использовании мастером сценариев.

Я упоминаю конкретный, потому что он бесплатный. В конечном счете, решение заключается в создании собственного установщика.

1 голос
/ 07 декабря 2009

В последние годы я управляю Java следующим образом: я загружаю установщик, устанавливаю его где-то, упаковываю все файлы в ZIP-архив и затем использую этот ZIP-файл для развертывания Java где угодно. Установщик оставит в реестре много вещей,% WinDir% и т. Д., Которые вам на самом деле не нужны. Это также позволяет мне перемещать некоторые файлы (например, bin\server\jvm.dll или настройки, связанные с безопасностью).

Таким образом, я даже могу встраивать Java в каталог приложения, независимо от любой уже установленной версии Java.

Просто установите JAVA_HOME в небольшой пакетный скрипт перед запуском приложения, и все в порядке. Вы можете использовать %~dp0, чтобы сделать его полностью независимым от положения (%~dp0 расширяется до пути, ведущего к пакетному файлу).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...