Java Runtime не подходит для распространения
Я получаю эту странную ошибку при попытке запустить созданную мной Java-программу, а также Jet Control Panel и JetPack 2. Я пытался запустить ее на разных компьютерах с одинаковым результатом.
3 ответа
На странице руководства по настройке среды выполнения JET есть раздел о системных файлах, поставляемых вместе с JetPackII, в котором говорится, что JET включает свою собственную копию библиотек времени выполнения Java.
Сообщение об ошибке говорит вам, что Java Runtime, который поставляется вместе с JET, является пробной версией с истекшим сроком действия. Это означает, что ваша версия JET является пробной версией, срок действия которой истек.
Есть несколько способов решить эту ошибку:
- Оплатить лицензионный сбор
- Получить бесплатную лицензию для некоммерческого использования
- Попробуйте установить еще одну 90-дневную пробную копию
- Найдите другой способ упаковки вашего программного обеспечения
Справочная информация для считывающего устройства, из Руководства пользователя Excelsior JET:
Excelsior JET - это инструментарий и полная среда выполнения для оптимизации, развертывания и запуска приложений, написанных на языке программирования Java.
Возможно, вы могли бы попытаться переустановить среду выполнения java (jre), а затем снова экспортировать ее. Вы пытались запустить его, не помещая его в исполняемый файл?
При компиляции большинство Java-приложений представляют собой серию .class
файлы (содержащие байт-код), которые затем архивируются в .jar
(архив Java). Этот файл JAR на самом деле является файлом в формате zip, который соответствует определенным спецификациям компоновки и сжатия. Для запуска этот JAR-файл должен быть передан в среду выполнения Java (JRE), которая содержит библиотеки, а также виртуальную машину (JVM) и обычно загружается прямо с серверов Oracle.
В отличие от jar
файл, exe
Файл содержит код, который Windows может запускать без JRE. Выводя .exe
файл, ваша IDE делает одну из двух вещей:
Добавление "заглушки", которая находит JRE, который пользователь уже установил, а затем передает в него остальную часть приложения, упакованного как байт-код Java.
exe
файл в него. Если JRE не может быть найдено, программа завершается ошибкой. Примером может служить, возможно, не существующая библиотека JSmooth.Упаковка приложения с самой средой Java Runtime Environment, которая позволяет ему выполнять байт-код Java независимо от того, что уже установлено в системе пользователя. Возможно, вам придется приобрести лицензию для распространения JRE (которая может быть или не быть официальной JRE Oracle) вместе с вашим приложением. Это, вероятно, то, что происходит с вами здесь.
Чтобы подтвердить, что дело обстоит именно так, опубликуйте название используемой IDE и просмотрите варианты под своей exe
-поколение команды относительно перераспределения, лицензий, времени выполнения и JRE /JVM.
У Stackru есть некоторые существующие ответы о "преобразовании программы Java в файл.exe", которые вы можете найти полезными для контекста.