Подтвердить что ты не робот

Javafxpackager: как вы устанавливаете "базовый JDK"?

Когда я запускаю javafxpackager, я получаю следующее предупреждение/информацию:

No base JDK. Package will use system JRE.

В документах для Развертывания приложений JavaFX не ясно, как можно указать альтернативный JDK. У него нет выбора, я вижу (может быть, я слепой). Является ли это системным свойством?

Спасибо.

4b9b3361

Ответ 1

Существует старый блог Oracle, в котором говорится об этом. Не знаю, по-прежнему ли это применимо или имеет отношение к вашему делу или нет, хотя:

Self-Contained Applications: выберите Java Runtime для объединения

Инструменты Packager в 7u6 предполагают текущий JDK (на основе свойства java.home) является источником встроенного времени выполнения. Это полезное упрощение для многие сценарии, но есть случаи, когда можно указать, что встраивание явно удобно. Например, IDE может использовать фиксированный JDK для создайте проект, и это не та версия, которую вы хотите связать ваше приложение.

Чтобы сделать его более гибким, теперь мы можем указать местоположение базы JDK в явном виде. Это необязательно, и если вы не укажете его, то текущий JDK будет использоваться (т.е. Это изменение полностью обратно совместимо).

В тег добавлен атрибут 'basedir'. Его значение местоположение JDK для использования. Хорошо указывать на JRE внутри JDK или JDK верхнего уровня. Однако это должен быть JDK, а не JRE, поскольку мы нужны другие инструменты JDK для правильной упаковки, и это должно быть последнее версии JDK, которая поставляется вместе с JavaFX (то есть Java 7 update 6 или позже).

Вот примеры (это часть задачи):

<fx:platform basedir="${java.home}"/>      
<fx:platform basedir="c:\tools\jdk7"/> 

Подсказка: эта функция позволяет использовать инструменты для упаковки из JDK 7 обновить 10 (и воспользоваться исправлениями ошибок и другими описанными функциями ниже) для создания пакета приложений с включенной версией FCS JRE 7 обновить 6.

Ответ 2

В случае, если это кому-то поможет, я хотел использовать javapackager для объединения 32-битной Java 8 JRE. Я столкнулся с проблемами, потому что JDK был 64-битным Java 8 JDK. Я смог решить мою проблему, установив JAVA_HOME в 32-разрядную JRE.

Ответ 3

При запуске с параметром -Bruntime:

javapackager.exe -Bruntime="c:\Program Files\Java\jdk1.8.0_76\jre\" ...

вы получите следующую информацию:

Использование базы JDK в: c:\Program Files\Java\jdk1.8.0_76\jre