2017-02-10 15 views
1

У нас есть приложение Java, которое установлено с установщиком, созданным с помощью Install4j. Продукт получает доступ к различным уровням базы данных в зависимости от того, где он установлен. Таким образом, уровень разработки установлен в C: .... \ dev \ ProductName, тестовый уровень установлен в C: .... \ test \ ProductName и т. Д.Как добавить значение к версии, когда выполняется программа установки, для установщика, созданного с помощью Install4j?

Кроме того, системные администраторы хотят, чтобы программа добавьте уровень базы данных к номеру версии, чтобы они могли запросить реестр, чтобы узнать, какая версия установлена ​​для определенного уровня. Таким образом, версия 1.5.0 станет 1.5.0.dev.

Есть ли способ добавить что-то к версии при запуске программы установки? До сих пор мне не удалось заставить установщиков сделать это. Я попытался запустить скрипт, который устанавливает переменную «sys.version», добавив переменную $ {tier} в поле версии и несколько других вещей, но не смог изменить версию при запуске установщика. Возможно, это просто невозможно.

Любые идеи?

ответ

0

Чтобы добавить строку в директорию установки во время выполнения, добавить «Выполнить скрипт» действие на узел «запуска» установщика и вызовите

context.setInstallationDirectory(
    new File(context.getInstallationDirectory(), ".dev1")); 

в нем. В разделе «Установщик-> Параметры обновления» установите флажок «Обнаруживать предыдущую установочную директорию», иначе добавленные строки будут накапливаться во время обновлений.

+0

Спасибо. Это работает для каталога установки. Есть ли способ добавить к версии или имени продукта? –

+0

Вы можете переопределять сообщения, отображающие название продукта или версию, но сама версия не может быть изменена во время выполнения. –

+0

Итак, мы перестанем пытаться изменить версию. :-) Как изменить имя продукта во время выполнения? Я не вижу установщика для контекста. –