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 делает одну из двух вещей:

  1. Добавление "заглушки", которая находит JRE, который пользователь уже установил, а затем передает в него остальную часть приложения, упакованного как байт-код Java. exe файл в него. Если JRE не может быть найдено, программа завершается ошибкой. Примером может служить, возможно, не существующая библиотека JSmooth.

  2. Упаковка приложения с самой средой Java Runtime Environment, которая позволяет ему выполнять байт-код Java независимо от того, что уже установлено в системе пользователя. Возможно, вам придется приобрести лицензию для распространения JRE (которая может быть или не быть официальной JRE Oracle) вместе с вашим приложением. Это, вероятно, то, что происходит с вами здесь.

Чтобы подтвердить, что дело обстоит именно так, опубликуйте название используемой IDE и просмотрите варианты под своей exe-поколение команды относительно перераспределения, лицензий, времени выполнения и JRE /JVM.

У Stackru есть некоторые существующие ответы о "преобразовании программы Java в файл.exe", которые вы можете найти полезными для контекста.

Другие вопросы по тегам