Ответ 1
Эта публикация в блоге немного устарела. Фактически реализованная схема в Java 9 задокументирована в JEP 223: Новая версия-String Scheme
Значение первых трех чисел стандартизировано. Значение 4-го и (любого) последующих номеров предоставляется поставщику для указания.
Обратите внимание на интересную взаимосвязь между вторым и третьим номерами.
Вот соответствующие части JEP.
"Последовательность может быть произвольной длины, но первым трем элементам присваиваются конкретные значения, а именно:
$MAJOR.$MINOR.$SECURITY
$MAJOR
- основной номер версии, увеличенный для основного выпуска, который содержит значительные новые функции, как указано в новой редакции спецификации платформы Java SE, например JSR 337 для Java SE 8. Возможности могут быть удалены в основной выпуск, заблаговременное уведомление, по крайней мере, одного крупного выпуска, и если это оправдано, могут быть сделаны несовместимые изменения. Номер версии$MAJOR
для JDK 8 равен 8; номер версии$MAJOR
для JDK 9 равен 9. Когда$MAJOR
увеличивается, все последующие элементы удаляются.
$MINOR
- младший номер версии, увеличенный для небольшого выпуска обновлений, который может содержать совместимые исправления ошибок, изменения стандартных API-интерфейсов, предусмотренные выпуском Maintenance Release соответствующей спецификации платформы, и функции реализации, выходящие за рамки этой Спецификации, как новые API-интерфейсы JDK, дополнительные поставщики услуг, новые сборщики мусора и порты для новых аппаратных архитектур.
$SECURITY
- Уровень безопасности, увеличенный для выпуска обновления безопасности, содержащий критические исправления, в том числе необходимые для повышения безопасности.$SECURITY
не reset к нулю, когда$MINOR
увеличивается. Поэтому более высокое значение$SECURITY
для данного значения$MAJOR
всегда указывает на более безопасный выпуск независимо от значения$MINOR
.Четвертый и более поздние элементы номера версии являются бесплатными для использования потребителями нижней части базы данных JDK. Такой потребитель может, например, использовать четвертый элемент для идентификации релизов исправлений, которые содержат небольшое количество критических исправлений, не относящихся к безопасности, в дополнение к исправлениям безопасности в соответствующем выпуске безопасности.