Команда разработчиков Oracle Java Deployment Team содержит инструкции по настройке частей JRE для включения в самосохраняемое приложение.
я просто скопировать и вставить соответствующий раздел здесь, в случае, если оригинал ссылка идет мертвой:
При использовании упаковочных инструментов для получения установочного пакета не может быть необходимо настроить изображение приложения прежде чем он будет завернут в установщик. Зачем? Например, вы можете захотеть подписать приложение, поэтому оно не кажется ненадежным для ОС (например, чтобы удовлетворить требованиям Mac OS X Gatekeeper).
Также по умолчанию автономное приложение не содержит полной копии Java Runtime. Мы включаем только набор обязательных компонентов. Одной из причин, почему этот подход был сделан, является то, что мы хотим уменьшить размер пакета. Однако есть ситуации, когда ваше приложение может зависеть от этих необязательных компонентов, и в этом случае вам понадобится способ добавить их в частную среду выполнения. Например, https-соединения не будут работать, если отсутствует jre/lib/ext/sunjce_provider.jar.
В настоящее время это может быть достигнуто путем предоставления настраиваемого сценария конфигурации, который выполняется после заполнения изображения приложения. Как и в приведенном выше примере со значком, вам нужно включить подробный вывод, чтобы найти имя файла сценария, а затем отбросить его в место, где будут найдены инструменты для упаковки. Обратите внимание, что язык сценариев также зависит от платформы. В настоящее время мы поддерживаем только оболочку для Mac/Linux и Windows Script на окнах.
Как вы узнали, где находится изображение приложения? В настоящее время пользовательские скрипты запускаются в каталоге, где хранятся файлы конфигурации, но доступ к образам приложения можно получить с использованием относительного пути к конкретной платформе. Вы можете получить этот путь из подробного вывода или путем установки переменной среды JAVAFX_ANT_DEBUG в true для сохранения промежуточных артефактов сборки.
Вот пример сценария (внесенный Джоном Петерсеном), который вы можете добавить, чтобы добавить jre/lib/ext/sunjce_provider.jar в пакет приложений MyApp на платформе Windows.Сценарий с использованием Javascript, но вы также можете использовать скрипты VBScript для Windows.
<?xml version="1.0" ?>
<package>
<job id="postImage">
<script language="JScript">
<![CDATA[
var oFSO = new ActiveXObject("Scripting.FileSystemObject");
var oFolder = oFSO.getFolder(".");
var from = oFolder.path + "\\MyApp\\app\\sunjce_provider.jar";
var to = oFolder.path + "\\MyApp\\runtime\\jre\\lib\\ext";
if (!oFSO.FolderExists(to)) {
oFSO.CreateFolder(to);
}
to += "\\";
oFSO.CopyFile(from, to);
]]>
</script>
</job>
</package>
Вышеприведенные обсуждает копируя sunjce_provider.jar
файл установки JRE в связке приложений, но процедура для копирования любой другой файл, в том числе java.exe
должны быть одинаковыми.
Дополнительные сведения о том, как изначально создать комплект для настройки, приведены в JavaFX Deployment Guide.
Вы должны создать приложение JNI, чтобы использовать DLL и запустить новый исполняемый файл. – Jayan
Нет. У них есть способ включить java.exe во время выполнения. Я нахожу для thta-решение – Jatin
Хорошо, обновил теги, которые будут javax и упаковка. Это не вопрос java – Jayan