Как запустить приложение java11 и jfx11 на jre1.8 - PullRequest
0 голосов
/ 05 мая 2020

Я компьютерный студент, и во время стажировки в компании я разработал небольшое java программное обеспечение с использованием JavaFX, maven и apache .poi.

Информация: приложение работает на Intellij и строится отлично, моя проблема касается *.jar, который я генерирую после завершения проекта.

Сначала я использовал JDK 14 и JFX14, однако во время выполнения (java –jar xx.jar ) У меня была ошибка, в которой говорилось, что я компилирую программу в JAVA 58 (JAVA 14) и что я использую JRE 52 (JAVA 8).

Поэтому я изменил проект для компиляции с JDK 11 и JFX 11, и теперь у меня такая же ошибка, говорящая мне, что я компилирую программу в JAVA 55 (JAVA 11) и что я использовал JRE 52 (JAVA 8).

Ошибка возникает из-за того, что мой P C по умолчанию использует jre1.8.0_251.

Итак, я попытался запустить программу таким образом «path_to_jdk11 \ bin \ java .exe» -jar xxx.jar, и он работает.

Вот и моя проблема:

Большинство пользователей s используйте версию JAVA, предлагаемую на сайте Oracle, то есть jre1.8.0_251, которая является последней доступной версией. Вне моей программы требуется Java 11, который, я полагаю, не развертывается на корпоративных ПК. Я попытался перенести свой проект на java 8, но у меня есть ошибки с Maven и module.info. java.

У вас есть совет по развертыванию *.jar или его развертыванию в .exe чтобы он мог работать с пользователем jre1.8.0_251?

С уважением

1 Ответ

0 голосов
/ 05 мая 2020

Не пытайтесь построить толстую банку. С современным Java работать не будет. Вместо этого создайте настоящий установщик. Это легко сделать с помощью JDK 14+. Просто следуйте этому руководству https://github.com/dlemmermann/JPackageScriptFX, которое охватывает все, что вам нужно. Он использует jpackage из JDK 14 и некоторые другие инструменты из него, а также работает с немодульными проектами. Когда вы устанавливаете JDK 14, просто убедитесь, что вы правильно установили JAVA_HOME и ваш PATH, чтобы все инструменты нашли правильную версию Java для сборки.

...