Могу ли я распространять JDK с помощью моего приложения?
-
29-09-2019 - |
Вопрос
Я работаю над приложением под названием Очаровательный. Анкет Приложение, основанное на Царапать, излучает исходный код Java и собирает его для загрузки на Lego Mindstorms NXT Robots.
Хотя приложение очень рано, пользователям трудно его установить.
Прямо сейчас пользователи Windows должны:
- Загрузите и установите комплект разработчиков Java
- Скачать и установить Lejos (библиотека Java для NXT)
- возможно настройка переменных среды
- Затем они могут скачать, установить и запускать сами по себе
Если бы я мог предоставить установщику, который включал бы JDK и Lejos, я мог бы выяснить переменные среды во время выполнения, и процесс становится:
- Скачать, установить и запустить очарование
Есть ли способ перераспределить JDK?
(Кстати, Обработка (Упрощенная текстовая среда программирования), кажется, предлагает версию, которая поставляется с JDK, поэтому кажется, что есть законный способ сделать это).
Приложение: Я бы хотел, чтобы пользователь Windows не установлен Java, чтобы запустить один файл .exe для установки JDK, Lejos и Enchanting.
Решение
Информация о перераспределении Здесь для Java 10 JDK и здесь Для Java 8 JDK. В настоящее время Java 8 существенно более подробно, чем Java 10.
и вы можете использовать Packjacket, чтобы упаковать все необходимые файлы, и создать установщик.
Другие советы
Предполагая, что вы удовлетворяете все юридические условия, необходимые для распространения вещей, вы можете использовать ИЗПАК Чтобы установить все предпосылки, включая JDK/JVM и конфигурацию переменных среды.
Довольно много инструментов, основанных на IBM Eclipse, имеют с ними JDK.
Или вы можете просто излучать байт -код напрямую. Вы можете объединить гораздо меньший (чем JDK) динамический язык JVM, а затем использовать его для компиляции для байт -кода или использовать библиотеки, созданные для этой цели.
(Я получил следующее от Проекты с использованием кавы страница)
Приложение Inventor для Android использует Kawa для перевода языка визуальных блоков.
... Ницца Компилятор (NICEC) использует Kawa's gnu.expr
и gnu.bytecode
Пакеты для генерации Java Bytecode. ...
Это последний, который использует языковую структуру Kawa для генерации байт -кода.
Не забывайте о Groovy, Jython, Clojure и Ruby. Интересный факт о Groovy, интерпретатор может собирать код Java, поскольку Groovy (более или менее) суперсет Java.