Программа загрузки / установки занимает мало места - PullRequest
1 голос
/ 20 декабря 2011

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

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

  • Загрузите и установите Java по мере необходимости. Если пользователь работает на 64-битной ОС, ему необходимо загрузить как 32-битную, так и 64-битную версию.
  • Загрузите и распакуйте zip-файл основного программного обеспечения.
    • Разрешить пользователю выбирать последнюю стабильную версию или версию для разработки (два разных сайта)
  • Выберите дополнительные параметры программного обеспечения (несколько вариантов)
    • Скачать каждый по отдельности (разные сайты)
    • Распаковать / установить при необходимости
    • Запись файлов конфигурации (простой текст)
  • Очистите каталог по мере необходимости в зависимости от параметров конфигурации.
    • например. если я выберу дополнительное программное обеспечение "1", удалите каталог "X"

Я не хочу указывать все эти дополнительные параметры программного обеспечения в установочном файле ядра (фактически, если бы я мог просто предоставить программу установки с небольшим размером, которая могла бы определять последние версии всего доступного программного обеспечения ( возможно, придется просматривать некоторые сайты на экране, другие могут предоставить текстовый файл с номером версии в нем)

Подходит ли для этого Install4j?

Я знаю, что мне нужно было бы написать некоторый код для идентификации версии, но в основном я хочу, чтобы пользовательский интерфейс с указанным путем выбирал параметры и загружал их по мере необходимости.

После того, как я написал сценарий, я бы предпочел оставить его так, чтобы не приходилось постоянно компилировать новые версии (если это возможно), за исключением случаев, когда информация об URL может измениться.

1 Ответ

1 голос
/ 21 декабря 2011

Вы можете использовать действия «Загрузить файл» для загрузки ZIP-файлов с произвольных сайтов, а затем действия «Установить содержимое ZIP-файла», чтобы установить их при необходимости.

Что касается презентации для пользователя, вы можете использовать стандартное средство установки компонентов, где вы можете заказать компоненты установки в дерево, которое отображается на экране «Компоненты установки». Вы можете оставить все компоненты установки пустыми в вашем случае. Другое преимущество заключается в том, что вы можете указать зависимости для компонентов установки.

В «Экран установки» я добавил бы группы действий, которые содержат пары действий «Загрузить файл» / «Установить содержимое файла ZIP» (и любые другие действия, необходимые для каждого компонента). Выражение условия каждой группы действий должно быть установлено на

context.getInstallationComponentById("123").isSelected()

где «123» - идентификатор соответствующего компонента установки.

Что касается 64-битных / 32-битных: в Windows я бы предложил создать только инсталлятор для 32-битной системы с 32-битной JRE в комплекте. Это работает так же хорошо на 64-битной JRE. При необходимости необходимо создать отдельный 64-битный медиа-файл. Связанная JRE может быть загружена по требованию.

В Linux я бы не советовал связывать JRE. При необходимости предоставьте два отдельных медиа-файла для 32-битной Linux и 64-битной Linux.

Что касается "управляемого пути для пользователя", вы можете создавать собственные экраны в install4j.

...