Почему загрузка Oracle JDK 9 заканчивается так рано? - PullRequest
0 голосов
/ 14 мая 2018

Я хотел установить JDK 9 на мою машину, зашел на официальную страницу загрузки JDK и с удивлением увидел,

Java SE 9 достигла конца поддержки. Пользователи Java SE 9 должны перейти на Java SE 10. Пожалуйста, посетите нашу страницу Загрузки Java SE, чтобы получить текущую версию Java SE. Вы будете перенаправлены на страницу загрузок Java SE через ... секунд. Обновите свои закладки на странице загрузок Java SE.

Я занимался поиском в Google, историей выпусков Java и т. Д., Но не смог найти никакой конкретной причины.

У меня есть пара вопросов-

  1. Oracle все еще поддерживает JDK 1.8, но прекратил выпускать обновления для JDK 9, почему?
  2. Должен ли я продолжать использовать JDK 1.8 в течение некоторого времени, а затем напрямую переключиться на JDK 10?

Ответы [ 2 ]

0 голосов
/ 14 мая 2018

Oracle перешел на временные выпуски. Это означает, что вы будете получать новую версию Java каждые 3 месяца и долгосрочную версию каждые несколько лет.

Долгосрочные выпуски, как ожидается, будут поддерживаться в течение 3 лет после следующего выпуска, поэтому я не ожидаю выхода новой версии LTS до некоторого времени в конце 2019 или начале 2020 года, поскольку декабрь 2020 года является окончанием поддержки JDK 8. .

0 голосов
/ 14 мая 2018

В прошлом в основных выпусках Java часто имелись далеко идущие функции, которые оказали огромное влияние на код, который вы могли и должны писать, например, обобщенные (Java 5) и функциональные конструкции (Java 8).

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

Предположительно, извлекая урок из этого, Oracle решила пересмотреть стиль разработки для Java, чтобы он стал более инкрементным или «гибким», если хотите. Вместо того, чтобы загружать функции основных выпусков, которые иногда могут занять много лет, они хотят публиковать основные выпуски с меньшим количеством новых функций, каждый с фиксированным графиком выпуска каждые шесть месяцев.

Java 9 и Java 10 - первые две версии, запланированные для этой новой модели выпуска, и Java 9 уже устарела с выпуском Java 10. Java 11 , выпущенная в сентябре 2018 года, является Долгосрочная поддержка (LTS) выпуск с поддержкой до 2026 ( Источник ). Это очень похоже на то, к чему многие привыкли в модели релизов Ubuntu (Кстати, они даже планировали заменить номера версий на что-то, включающее год и месяц выпуска или около того, аналогично тому, что Canonical делает с Ubuntu, но почему-то отбросил эту идею).

Использование не Java-версии Java теперь подразумевает обязательство обновлять программное обеспечение, использующее JDK, каждые 6 месяцев. Это не должно быть таким же сложным, как миграция кода из одной основной версии Java в другую в прошлом, потому что, как описано, языковые изменения должны происходить более постепенно, но это определенно нужно учитывать. Если вы не хотите брать на себя это обязательство, вам следует придерживаться версий LTS, что означает придерживаться Java 8 или Java 11.

Для нового проекта «с нуля» Java 11, вероятно, является лучшим выбором на данный момент. Но может быть необходимо придерживаться Java 8, если используемый инструментарий еще не полностью поддерживает Java 11.

...