Могу ли я распространять JDK с моим приложением? - PullRequest
5 голосов
/ 09 ноября 2010

Я работаю над приложением под названием Enchanting . Приложение, основанное на Scratch , генерирует исходный код Java и компилирует его для загрузки в роботы LEGO Mindstorms NXT.

Пока приложение очень раннее, пользователям сложно его установить.

Сейчас пользователи Windows должны:

  • скачайте и установите Java Developer Kit
  • скачайте и установите LeJOS (java-библиотека для NXT)
  • возможно настроить переменные окружения
  • затем они могут загрузить, установить и запустить Enchanting.

Если бы я мог предоставить инсталлятор, который включал бы JDK и LeJOS, я мог бы выяснить переменные среды во время выполнения, и процесс стал бы:

  • Скачать, установить и запустить Enchanting

Есть ли способ перераспределить JDK?

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

Приложение : Я бы хотел, чтобы пользователь Windows, у которого не установлена ​​Java, мог запускать один файл .exe для установки JDK, LeJOS и Enchanting.

Ответы [ 4 ]

4 голосов
/ 09 ноября 2010

Информация о перераспределении: здесь для Java 10 JDK и здесь для Java 8 JDK. В настоящее время Java 8 значительно более подробный, чем Java 10.

и вы можете использовать PackJacket , чтобы упаковать все необходимые вам файлы и создать установщик.

0 голосов
/ 09 ноября 2010

Или вы можете просто генерировать байт-код напрямую. Вы можете связать гораздо меньший (чем JDK) динамический язык JVM, а затем использовать его для компиляции в байт-код или использовать библиотеки, созданные для этой цели.

(я получил следующее из проектов, использующих страницу Kawa )

App Inventor для Android использует Kawa для перевода языка визуальных блоков.

... Компилятор Nice (nicec) использует пакеты Kawa gnu.expr и gnu.bytecode для генерации байт-кода Java. ...

Именно этот последний использует язык Kawa для генерации байт-кода.

Не забывайте о Groovy, Jython, Clojure и Ruby. Интересный факт о Groovy, интерпретатор может компилировать код Java, поскольку Groovy (более или менее) является надмножеством Java.

0 голосов
/ 09 ноября 2010

У многих инструментов на основе IBM Eclipse есть JDK.

0 голосов
/ 09 ноября 2010

Если вы удовлетворяете всем юридическим условиям, необходимым для распространения материала, вы можете использовать izpack для установки всех необходимых компонентов, включая JDK / JVM и конфигурацию переменных среды.

...