Могу ли я установить файл, используя Izpack 5, не являясь частью install.jar, созданного izpack
Мой установочный zip-файл widget.zip содержит следующее:
- 32bitJava
- install.jar
- widgetinstaller.exe
- widgetinstaller.ini
- widgetinstaller.ico
Подвести итоги:
- 32bitJava - это 32-битная JRE, загруженная из Oracle
- install.jar - это установщик, созданный Izpack
- widgetinstaller. * создаются winrun4j, предоставляя упаковщик exe для установщика.
Таким образом, с помощью этой настройки я могу установить свое приложение без необходимости иметь пользовательскую среду выполнения Java.
Однако после установки фактическое приложение также нуждается в java-среде выполнения для фактического запуска. Поэтому на данный момент копия 32bitJava включена как часть установки izpack, то есть она существует в install.jar и устанавливается во время установки.
Но это означает, что у меня есть две копии JVM, и потому что 32bitJava больше, чем мое реальное приложение, делает мою загрузку слишком большой.
Итак, как я могу скопировать папку 32bitJava в установку во время / после установки вместо того, чтобы включать ее в install.jar?
4 ответа
Вы хотите сделать "свободный" пакет для JVM. Свободный пакет не должен содержать файлы, которые он устанавливает, поэтому он может скопировать файл из zip-файла на место, вместо того, чтобы использовать один из встроенных в банку.
<pack id="java" name="java" required="yes" preselected="yes" loose="true">
...
<executable ...>
<!-- something appropriate to install java -->
</executable>
</pack>
Упакуйте файлы в самораспаковывающийся архив /zip и, как часть процесса распаковки, извлеките файлы в нужное место.
Более подробную информацию о самораспаковывающихся архивах можно найти в Википедии: http://en.wikipedia.org/wiki/Self-extracting_archive
Вместо того, чтобы принудительно включать установку java в install.jar, почему бы вам просто не установить install.jar для установки вашей программы и не добавить ссылку здесь: http://www.java.com/inc/BrowserRedirect1.jsp?locale=en? Это ссылка для загрузки текущей версии Java.
Чтобы создать такую ссылку, щелкните правой кнопкой мыши> новый> ярлык, вставьте ссылку в первое диалоговое окно, нажмите кнопку "Далее" и назовите ее "Установка Java". Это добавит максимум 4 КБ к вашему пакету и все еще позволит вам установить Java (однако, пользователь должен будет щелкнуть это вручную)
Я использую URL перенаправления браузера, потому что он определяет то, что нужно Java-людям на основе их компьютера (ОС и процессор)
Как насчет создания небольшой утилиты после установки, чтобы скопировать исполняемый файл в папку? Вы можете создать его с помощью небольшого сценария оболочки (или пакетного файла в Windows) или даже небольшой утилиты C++, которая просто копирует JVM в нужное вам место. Таким образом, после установки утилиты вы запускаете код после установки и копируете JVM в нужное место.