990x.top
Простой компьютерный блог для души)
OpenJDK Platform binary — что это?
Приветствую друзья! Устанавливая разный софт, игры, часто на ПК ставятся и дополнительные компоненты. Если хотя бы один компонент глючит, то софт/игра может не работать.
OpenJDK Platform binary — что это такое?
OpenJDK — проект по созданию полностью совместимого Java Development Kit, состоящего исключительно из свободного и открытого исходного кода.
Другими словами — это некая версия Java, более продвинутая, но которая используется в разном софте. Например в играх STALCRAFT, Minecraft, в студии разработки Visual Studio 2017, в софте Unity.
Ключевое слово Platform в названии говорит, что компонент возможно нужен для работы некоторого ПО. Это ПО может быть написано на языке Java или содержать компоненты, которые написаны на этом языке.
В диспетчере задач может быть пункт OpenJDK Platform binary, внутри которого будет указано название приложения, которое использует этот компонент:

Также компонент может устанавливать соединение с интернетом:

OpenJDK Platform binary — выскакивает ошибка, что делать?
Может быть например такая ошибка:
У некоторых пользователей ошибка исчезла сама. Возможно лаунчер автоматически обновился и в новой версии ошибку исправили. Вывод — у вас может быть старая версия лаунчера.
Советы, которые могут помочь:
Конечно, самый радикальный способ — переустановка Windows, но это стоит делать когда уже ничего не помогает вообще.
OpenJDK Platform binary также может кушать много оперативки:

Личные рекомендации по исправлению ошибки
Попробуйте создать нового пользователя Windows. И там запустить софт/игру. Либо в старой учетке — удалите все, а в новой — установите заново.
Если у вас есть внешний жесткий диск или у вас установлено в ПК не один жесткий диск — создайте образ системы. Так вы сохраните текущую Windows. После — установите Windows заново на системный диск. Установите игру. Если проблем не будет — дело в вашей старой Windows. Если проблемы будут — дело в игре/софте и нужно ждать исправления (можно еще написать в службу поддержки). В любом случае — вы сможете легко восстановить свою прежнюю Windows из образа системы.
По всем пунктам подробную инфу можно найти в интернете.
Национальная библиотека им. Н. Э. Баумана
Bauman National Library
Персональные инструменты
OpenJDK (Open Java Development Kit)
OpenJDK — проект по созданию полностью совместимого Java Development Kit, состоящего исключительно из свободного и открытого исходного кода.
Содержание
История
Обещание Sun и первый релиз
Публикация библиотеки классов
Следом за обещанием выпустить Java Development Kit (JDK), почти полностью основанным на свободном и открытом коде в первой половине 2007, Sun опубликовала полные исходные коды библиотеки классов Java под GPL 8 мая 2007, за исключением некоторых частей, ограниченных третьей стороной, и исключающих условия GPL. В списке среди обремененных частей были несколько важных компонентов Java по графическому интерфейсу (GUI). Sun заявила, что планирует заменить оставшиеся собственнические компоненты альтернативными реализациями и сделать библиотеку классов полностью свободной.
Улучшения сообщества
В декабре 2007 Sun перевела контроль версий OpenJDK с TeamWare на Mercurial как часть процесса перевода на открытые средства разработки. Mercurial поддерживается OpenJDK и на текущий момент.
OpenJDK имеет сравнительно строгие процедуры принятия изменений кода: каждое предполагаемое изменение должно быть рассмотрено двумя инженерами Sun/Oracle, а участник должен предварительно подписать Соглашение Участника Sun/Oracle (SCA/OCA).
Сотрудничество с IBM, Apple и SAP
Проекты OpenJDK
Существует несколько отдельных проектов OpenJDK:
Компоненты
IcedTea и другое участвующее ПО
Чтобы объединить OpenJDK в Fedora и другие свободные дистрибутивы GNU / Linux, OpenJDK должен был быть работоспособным, используя только бесплатные программные компоненты. Из-за не свободных компонентов в библиотеке классов и предположений о том, что в системе сборки присутствует JDK от компании Sun, объединения не получилось. Чтобы достичь открытости, Red Hat начала проект IcedTea в июне 2007 года. Он начал жизнь как гибрид классов OpenJDK / GNU, который можно было использовать для загрузки OpenJDK, заменив не свободный код кодом из GNU Classpath. [Источник 9]
В мае 2008 года дистрибутивы Fedora 9 и Ubuntu 8.04 включали IcedTea 6, полностью основанную на свободном и открытом исходном коде. Fedora 9 была первой версией, поставляемой с IcedTea6, основанной на OpenJDK 6, а не OpenJDK 7. Ubuntu также впервые упаковала IcedTea 7, а затем перешла на IcedTea 6. Пакеты для IcedTea 6 также были созданы для Debian и включены в lenny. 12 июля 2008 года Debian принял OpenJDK-6 в нестабильном режиме, и теперь он стабилен. OpenJDK также доступен на OpenSUSE, Red Hat Enterprise Linux и RHEL производных, таких как CentOS. [Источник 10]
В июне 2008 года Red Hat объявила, что упакованные двоичные файлы для OpenJDK на Fedora 9, построенные с использованием IcedTea 6, прошли тесты на совместимость с технологической совместимостью и могут претендовать на полномасштабную реализацию на Java 6. В июле 2009 года бинарная сборка IcedTea 6 для Ubuntu 9.04 прошла все тесты на совместимость в Java SE 6 TCK. [Источник 11]
С августа 2008 года OpenJDK 7 можно использовать в Mac OS X и других вариантах BSD.
В Android Nougat OpenJDK заменяет теперь отмененный Apache Harmony в качестве библиотек Java в исходном коде мобильной операционной системы. Google находится в постоянном правовом споре с Oracle по искам о нарушении авторских прав и патентов путем использования повторных внедрений защищенных авторским правом API Java через Harmony.
Доступность
Поддерживаемые версии JDK
OpenJDK изначально основывался только на JDK 7.
15 февраля 2008 года OpenJDK разделился на два проекта:
Все версии OpenJDK (6, 7, 8, 9) имеют единую кодовую базу. То есть, mercurial-репозитории для новых версий OpenJDK создаются из предыдущих. Основная разработка ведется в версии OpenJDK, которая готовится к релизу. В частности, в 2011-2013 годах основная разработка велась в OpenJDK 8, а в 2014-2016 годах — в OpenJDK 9. Таким образом, разработка новых библиотек и подсистем ведется в версии, которая только готовится к релизу и после интеграции в основной репозитории, портируется в более ранние версии.
Компилятор и виртуальная машина
Компилятор Java и виртуальная машина HotSpot доступны под лицензией GPL.
Включение в дистрибутивы Linux
В июне 2008 года был анонсирован проект IcedTea (пакетная версия OpenJDK в Fedora 9), который прошёл TCK и теперь может претендовать на звание реализации, полностью совместимой с Java 6.
12 июля 2008 года OpenJDK был принят в нестабильную ветку Debian.
В июле 2009 года бинарная сборка OpenJDK для Ubuntu 9.04 прошла все испытания на совместимость с платформой Java SE 6. [Источник 13]
Сборка OpenJDK 6 устанавливается в основном наборе пакетов OpenSUSE 11, входит в состав пакетов, поставляемых на DVD и присутствует в основных репозиториях проекта.
OracleJDK и OpenJDK
Oracle JDK базируется на OpenJDK?
Да. Oracle JDK основан на исходном коде OpenJDK. Кроме того, он содержит компоненты с закрытым исходным кодом. Окончательный результат лицензируется в соответствии с Binary Code License (лицензией Oracle).
Не делает ли OpenJDK ненужными другие реализации Java SE?
Нет. Пользователи Java могут извлечь выгоду из выбора совместимых реализаций Java SE, предоставляемых множеством вендоров в различных коммерческих моделях. Различные совместимые реализации Java SE конкурируют в таких аспектах, как настройка различных архитектур, производительность, инструменты и развертывание.
Планирует ли Oracle изменять способ участия разработчиков в OpenJDK?
Нет. Проект OpenJDK продолжает принимать взносы в рамках существующих соглашений с вкладчиками и принимать новых участников на тех же условиях. На данный момент нет планов по изменению модели участия.
Так много JDK… Какой использовать и чем это грозит?
От переводчика: Решение перевести эту статью пришло не само собой — скорее это вынужденная мера :). К нам, как к вендорам фреймворка CUBA, обращаются с этим вопросом с завидной регулярностью. Безусловно, для нас это тоже крайне важная тема, и в ответ на последние изменения мы подняли тестовые стенды как на Oracle JDK, так и на Liberica JDK — эта мера на данный момент ограждает наших пользователей от непредвиденных лицензионных трат. Однако, эта тема еще не закрыта, и мы продолжаем внимательно следить за развитием событий, и, кто знает, возможно нам придется добавлять стенды для еще каких сборок JDK уже в следующем году.
Статья под катом подкупает тем, что она лаконично описывает проблематику и наиболее популярные JDK с их особенностями.
Недавно Oracle заявили, что эволюция Java кардинально изменится благодаря переходу на «Release Train» — новому подходу к выкатыванию версий. Это изменение также повлекло за собой перемены в плане поддержки версий, которая теперь будет осуществляться не для всех, а только для LTS версий. Сообщество Java чемпионов разъяснило вводимые новшества, детальный документ доступен в сети.
Даже с учетом этих новостей остаются вопросы: какие билды JDK сейчас доступны? Будут ли они бесплатными или коммерческими? Прежде чем ответить на этот вопрос, важно понять, какие требования предъявляются к JDK как продукту. Фактически, есть только один основной исходный код JDK. Он находится здесь. Кто угодно может использовать исходный код для построения собственной сборки и размещения ее где-то в сети. Однако есть отдельная процедура сертификации, которая должна быть пройдена, чтобы сборка JDK считалась валидной. Сертификация осуществляется Java Community Process (JCP), который предоставляет Technology Compatibility Kit (TCK). Если какая-либо организация создает новую сборку OpenJDK, которая отвечает TCK, она считается «совместимой с Java SE».
Имейте в виду, что сборка не может называться «Java SE», если компания, осуществившая сборку, не приобрела коммерческую лицензию от Oracle. Например, сборки AdoptOpenJDK, которые проходят TCK, не являются «Java SE», но являются «Java SE compliant». Также нужно учитывать, что сертификация сейчас основывается “на честном слове” — результаты не отсылаются в JCP/Oracle для верификации и являются закрытой информацией. Короче говоря, каждый вендор, взявший исходники OpenJDK и собравший версию, порождает еще одну отдельную сборку JDK.
Итак, без лишних слов, рекомендуем ознакомиться со следующими готовыми к использованию JDK:
Oracle JDK
Это главный поставщик Java 11 (релиз уже состоялся). Это коммерческая версия с платной поддержкой. Ее можно бесплатно скачивать и использовать только непосредственно для разработки. Использовать ее в продакшене, не заплатив Oracle, нельзя (так что для многих не интересующихся вопросами лицензирования это ловушка). Oracle планирует предоставлять платную поддержку до 2026 года и далее. В отличие от того, как было раньше, сборка Oracle JDK ничем не “лучше” OpenJDK (по стольку по скольку оба находятся на одном и том же уровне security patch level).
OpenJDK Build от Oracle
AdoptOpenJDK
Это тоже бесплатные и не-брендовые сборки OpenJDK, распространяемые по лицензии GPL с Classpath Extension, только в отличие от билдов OpenJDK от Oracle эти версии сборки будут действовать в течение более длительного времени для основных версий, таких как Java 11. Версии Java 11 будут выпускаться в течение 4 лет через год после следующего основного релиза. AdoptOpenJDK ориентируется на сообщество. Пока другие команды создают и публикуют исправления безопасности для исходного репозитория OpenJDK, они будут выпускать билды. И IBM, и Red Hat обозначили, что намерены выпускать такие патчи.
AdoptOpenJDK OpenJ9
Вдобавок к стандартным сборкам OpenJDK AdoptOpenJDK будет также предоставлять версии с OpenJ9 вместо HotSpot. OpenJ9 изначально была JVM от IBM, но сейчас OpenJ9 имеет открытый исходный код. И, кстати говоря, эта опция наиболее достойная изучения.
Red Hat OpenJDK
Red Hat предоставляет версии сборки OpenJDK на Red Hat Enterprise Linux (RHEL), являющемся коммерческим продуктом с платной поддержкой. Red Hat очень неплохо справляются с исправлениями безопасности в OpenJDK. В прошлом Red Hat отвечали за security-апдейты Java 6 и 7. Сборка от Red Hat более интегрирована с операционной системой, так что ее нельзя назвать типичным билдом OpenJDK (отсутствует JDK конечного пользователя).
Azul Zulu
Zulu — брендированная версия OpenJDK с платной коммерческой поддержкой. К тому же, хотя Azul предоставляет некоторые элементы Zulu бесплатно в рамках «Zulu Community», они не несут никаких особых обязательств по доступности этих сборок. У Azul довольно масштабный план по поддержке Zulu, включающий поддержку Java 9, 13 и 15, в отличие от других поставщиков.
Amazon Corretto
Это новейшая из всех описанных опций. Corretto — бесплатная версия сборки OpenJDK с долгосрочной поддержкой, проходящая TCK. Она распространяется по стандартным условиям лицензирования всех версий OpenJDK: GPL + CE. Amazon создаст собственные патчи и запустят Corretto на AWS, так что он будет использоваться довольно активно (и уже добавлен в некоторые продукты). Поддержка Java 8 планируется по меньшей мере до июня 2023.
В процессе преобразования исходного OpenJDK в различные версии сборки производитель может добавлять различные утилиты или брендировать продукт, если это не препятствует сертификации (TCK). Например, нельзя добавить новый public-метод в API или новые языковые ресурсы.
Есть и другие реализации JDK, такие как IBM и SAPMachine. Однако эти версии сборки не так часто используются, поэтому они не упомянуты в этой статье. Более подробную информацию можно найти здесь и здесь.
Заключение
Лично я особой проблемы в наличие нескольких версий JDK не вижу, так как всем им нужно проходить сертификацию (TCK). Чем действительно стоит обеспокоиться — это использование одной из проприетарных JDK и бесплатной версии сборки от Oracle, во избежание головной боли в будущем. Если вы используете только базовые функции (например, ваш бизнес не особо зависит от секьюрити-апдейтов), вам больше подойдут сборки OpenJDK от Oracle (НЕ OracleJDK), т.к. они постоянно обновляются (в течение 6 месяцев после релиза), и вы можете использовать JDK в продакшене без особых проблем. Если в вашем бизнесе задействованы облачные сервисы (или с AWS), хорошим выбором будет AWS Corretto, который уже пригоден к использованию на Amazon Linux и Docker.
СОДЕРЖАНИЕ
Компоненты
Проект OpenJDK создает ряд компонентов: в первую очередь виртуальную машину ( HotSpot ), библиотеку классов Java и компилятор Java ( javac ).
Версии OpenJDK
OpenJDK изначально был основан только на версии JDK 7 платформы Java.
Начиная с JDK 10, усилия по созданию эталонной реализации платформы Java SE с открытым исходным кодом были перенесены в проект JDK. В отличие от прошлых проектов выпуска JDK, которые производили только одну версию функции, а затем прекращали ее работу, этот долгосрочный проект будет создавать все будущие выпуски функций JDK и выпускать выпуск функций каждые шесть месяцев в соответствии со строгой, основанной на времени моделью.
Существует несколько отдельных веток разработки OpenJDK и JDK Project:
OpenJDK сборки
Из-за того, что Oracle больше не выпускает обновления для выпусков долгосрочной поддержки (LTS) по разрешительной лицензии, другие начали предлагать сборки для Windows. Дистрибутивы Linux всегда предлагали свои собственные сборки.
| Строить | Организация | LTS | Разрешающая лицензия | TCK протестирован | Построен без изменений | Коммерческая поддержка |
|---|---|---|---|---|---|---|
| AdoptOpenJDK (перенесен в Eclipse как Adoptium в 2021 году) | да | да | Нет | По желанию | Необязательно (IBM) | |
| Алибаба Драконий Колодец | Alibaba Group | да | да | Нет | Нет | Нет |
| Amazon Corretto | Амазонка | да | да | да | Нет | Необязательно (в AWS) |
| Азул Зулу | Azul Systems | да | да | да | Нет | По желанию |
| BellSoft Liberica JDK | BellSoft | да | да | да | Нет | По желанию |
| Затмение Адоптиум / Темурин | Фонд Затмения | да | да | да | По желанию | Необязательно (Azul, IBM) |
| Сертифицированная версия IBM Semeru Runtime | IBM | да | Нет | да | Нет | Необязательно (IBM) |
| Открытая редакция IBM Semeru Runtime | IBM | да | да | Нет | Нет | Необязательно (IBM) |
| IBM Java SDK (версия 11 перенесена в IBM Semeru Runtime Certified Edition) | IBM | да | Нет | да | Нет | да |
| Среда выполнения JetBrains | JetBrains | да | да | Нет | Нет | Нет |
| Сборка Microsoft OpenJDK | Microsoft | да | да | да | Нет | Необязательно (в Azure) |
| ojdkbuild | да | да | Нет | да | Нет | |
| OpenLogic OpenJDK | OpenLogic | да | да | Нет | Нет | По желанию |
| GraalVM Community Edition | GraalVM | Нет | да | да | Нет | Нет |
| Oracle GraalVM Enterprise Edition | Корпорация Oracle | да | Нет | да | Нет | да |
| Oracle Java SE | Корпорация Oracle | да | Нет | да | Нет | да |
| Oracle OpenJDK | Корпорация Oracle | Нет | да | да | да | Нет |
| Сборка Red Hat OpenJDK | IBM | да | да | да | Нет | да |
| SAP SapMachine | SAP | да | да | да | Нет | Необязательно (для продуктов SAP) |
IcedTea и включение в дистрибутивы программного обеспечения
История
Обещание Sun и первоначальный выпуск
Выпуск библиотеки классов
Следуя своему обещанию выпустить Java Development Kit (JDK), основанный почти полностью на бесплатном и открытом исходном коде в первой половине 2007 года, Sun выпустила полный исходный код библиотеки классов Java под лицензией GPL 8 мая 2007 года, за исключением для некоторых ограниченных частей, которые были лицензированы для Sun третьими сторонами, и Sun не смогла повторно лицензировать по GPL. В список обремененных частей было включено несколько основных компонентов графического пользовательского интерфейса Java (GUI). Sun заявила, что планирует заменить оставшиеся проприетарные компоненты альтернативными реализациями и сделать библиотеку классов полностью бесплатной.
Улучшения сообщества
5 ноября 2007 года Red Hat объявила о соглашении с Sun, подписав широкое соглашение об участии Sun (которое охватывает участие всех инженеров Red Hat во всех проектах Sun с открытым исходным кодом) и комплект совместимости технологий OpenJDK Community Technology Compatibility Kit от Sun (TCK). ) Лицензионное соглашение (которое дает компании доступ к набору тестов, который определяет, соответствует ли проект, основанный на OpenJDK, спецификации Java SE 6).
OpenJDK имеет сравнительно строгие процедуры принятия предложений кода: каждый предложенный вклад должен быть рассмотрен другим коммиттером OpenJDK, и участник должен подписать соглашение Sun / Oracle Contributor Agreement (SCA / OCA). Желательно, чтобы также был проведен тест jtreg, демонстрирующий, что ошибка была исправлена. Изначально внешний процесс отправки исправлений был медленным, и до сентября 2008 года фиксация кодовой базы производилась только инженерами Sun. Процесс улучшился, и, начиная с 2010 года, простые исправления и бэкпорты с OpenJDK 7 на OpenJDK 6 могут выполняться в течение нескольких часов, а не дней.
Сотрудничество с IBM, Apple и SAP
12 ноября 2010 г. Apple Inc. (всего через три недели после прекращения поддержки собственного порта среды выполнения Java) и Oracle Corporation объявили о проекте OpenJDK для Mac OS X. Apple предоставит большинство ключевых компонентов, инструментов и технологий, необходимых для Java SE. 7 в Mac OS X, включая 32-разрядную и 64-разрядную виртуальную машину Java на основе HotSpot, библиотеки классов, сетевой стек и основу для нового графического клиента.
В июле 2011 года SAP AG объявила, что SAP официально присоединилась к проекту OpenJDK.





