Oracle внесла ряд существенных изменений в способ разработки, распространения и обновления платформы Java одновременно с запуском JDK 9.
Ключевые факты, чтобы ответить на ваши вопросы:
- Oracle использовала Лицензию двоичного кода Oracle (OBCL) для Java. Это имело ограничения в области использования (вам нужна была коммерческая лицензия для встраиваемого использования), но предоставляло бесплатное использование Oracle JDK для разработки и развертывания общего назначения.
- Начиная с JDK 11 лицензия изменилась на Oracle Technology NetworkЛицензионное соглашение (OTNLA), которое требует от вас подписки Java SE для использования в коммерческих целях. Эта лицензия также применяется к обновлениям JDK 8 с апреля (обновление 211/212).
- Начиная с JDK 11, Oracle устранила все функциональные различия между Oracle JDK и двоичным файлом, созданным исключительно из исходного кода OpenJDK. ,Важными вещами, отсутствующими в Oracle JDK 11, являются плагин для браузера, Java Web Start и JavaFX.
- Вы можете продолжать использовать любые общедоступные двоичные файлы Oracle JDK 7 (и более ранние версии) в рабочей среде без необходимостиJava SE подписка, так как лицензия по-прежнему является OBCL (она не была изменена ретроспективно). Вы также можете, как вы говорите, использовать JDK 8 до обновления 202 в рамках OBCL бесплатно.
- Существует несколько вариантов продолжения использования JDK 8 с обновлениями бесплатно. Одним из них является Сообщество Зулу из Азула (на которого я работаю). Это бесплатный, проверенный TCK бинарный файл с парой дополнительных функций с обратным портом (TLS 1.3 и Java Flight Recorder). Поскольку он проходит TCK, с функциональной точки зрения он идентичен Oracle JDK. Если вы не используете Applets или Web Start, ваши приложения будут работать так же, как с Oracle JDK.
- Если вы хотите перейти на JDK 11 (текущий выпуск долгосрочной поддержки, как определено Oracle, ноза ним следуют все другие провайдеры JDK), затем вам нужно будет выбрать один из бесплатных дистрибутивов (например, сообщество Zulu).
Настоятельно рекомендуется убедиться, что ваш JDK обновлен и содержит все соответствующиепатчи безопасности. Продолжение использования более старой версии может подвергнуть вас значительным угрозам безопасности.