openjdk что это такое
990x.top
Простой компьютерный блог для души)
OpenJDK Platform binary — что это?
Приветствую друзья! Устанавливая разный софт, игры, часто на ПК ставятся и дополнительные компоненты. Если хотя бы один компонент глючит, то софт/игра может не работать.
OpenJDK Platform binary — что это такое?
OpenJDK — проект по созданию полностью совместимого Java Development Kit, состоящего исключительно из свободного и открытого исходного кода.
Другими словами — это некая версия Java, более продвинутая, но которая используется в разном софте. Например в играх STALCRAFT, Minecraft, в студии разработки Visual Studio 2017, в софте Unity.
Ключевое слово Platform в названии говорит, что компонент возможно нужен для работы некоторого ПО. Это ПО может быть написано на языке Java или содержать компоненты, которые написаны на этом языке.
В диспетчере задач может быть пункт OpenJDK Platform binary, внутри которого будет указано название приложения, которое использует этот компонент:
Здесь видим MegaRAID Storage Manager — предположительно программа для работы/настройки RAID-массивов.
Также компонент может устанавливать соединение с интернетом:
Скорее всего просто для отправки некоторой технической информации, а может просто проверяет наличие новой версии OpenJDK.
OpenJDK Platform binary — выскакивает ошибка, что делать?
Может быть например такая ошибка:
У некоторых пользователей ошибка исчезла сама. Возможно лаунчер автоматически обновился и в новой версии ошибку исправили. Вывод — у вас может быть старая версия лаунчера.
Советы, которые могут помочь:
Конечно, самый радикальный способ — переустановка Windows, но это стоит делать когда уже ничего не помогает вообще.
OpenJDK Platform binary также может кушать много оперативки:
Такое поведение может быть и правда глюком или Java или самого софта/игры.
Личные рекомендации по исправлению ошибки
Попробуйте создать нового пользователя Windows. И там запустить софт/игру. Либо в старой учетке — удалите все, а в новой — установите заново.
Если у вас есть внешний жесткий диск или у вас установлено в ПК не один жесткий диск — создайте образ системы. Так вы сохраните текущую Windows. После — установите Windows заново на системный диск. Установите игру. Если проблем не будет — дело в вашей старой Windows. Если проблемы будут — дело в игре/софте и нужно ждать исправления (можно еще написать в службу поддержки). В любом случае — вы сможете легко восстановить свою прежнюю Windows из образа системы.
По всем пунктам подробную инфу можно найти в интернете.
Различия между Oracle JDK и OpenJDK
Изучите различия между Oracle Java Development Kit и OpenJDK.
1. введение
Дальнейшее чтение:
Установка Java в Ubuntu
Разница между JVM, JRE и JDK
2. История Oracle JDK и Java SE
JDK (Java Development Kit) – это среда разработки программного обеспечения, используемая в программировании на платформе Java. Он содержит полную среду выполнения Java, так называемую частную среду выполнения. Название произошло из-за того, что он содержит больше инструментов, чем автономный JRE, а также другие компоненты, необходимые для разработки приложений Java.
Oracle настоятельно рекомендует использовать термин JDK для обозначения комплекта разработки Java SE (Standard Edition) (существуют также платформы Enterprise Edition и Micro Edition).
Давайте взглянем на историю Java SE:
Примечание: версии, выделенные курсивом, больше не поддерживаются.
Мы видим, что основные выпуски Java SE выходили примерно каждые два года до Java SE 7. Потребовалось пять лет, чтобы перейти с Java SE 6, и еще три, чтобы достичь Java SE 8 позже.
Начиная с Java SE 10, мы можем ожидать новых релизов каждые шесть месяцев. Однако не все выпуски будут выпусками с долгосрочной поддержкой (LTS). В соответствии с планом выпуска Oracle выпуск продукта LTS будет происходить только каждые три года.
Java SE 11 является последней версией LTS, а Java SE 8 будет получать бесплатные общедоступные обновления до декабря 2020 года для некоммерческого использования.
Этот набор для разработки получил свое нынешнее название после того, как Oracle купила Sun Microsystems в 2010 году. До этого его называли SUN JDK, и это была официальная реализация языка программирования Java.
3. OpenJDK
OpenJDK-это бесплатная реализация платформы Java SE с открытым исходным кодом. Первоначально он был выпущен в 2007 году в результате разработки, которую Sun Microsystems начала в 2006 году.
Мы должны отметить, что до этого продолжительного проекта были проекты выпуска JDK, которые выпустили одну функцию, а затем были прекращены.
Давайте теперь проверим версии OpenJDK:
4. Oracle JDK против OpenJDK
В этом разделе мы сосредоточимся на ключевых различиях между Oracle JDK и OpenJDK.
4.1. График выпуска
Oracle обеспечивает долгосрочную поддержку своих выпусков. С другой стороны, OpenJDK поддерживает изменения в выпуске только до тех пор, пока не будет выпущена следующая версия.
4.2. Лицензии
При использовании платформы Oracle существуют некоторые последствия для лицензирования. Общедоступные обновления для Oracle Java SE 8, выпущенные после января 2019 года, не будут доступны для делового, коммерческого или производственного использования без коммерческой лицензии, как объявила Oracle |. Однако OpenJDK является полностью открытым исходным кодом и может использоваться свободно.
4.3. Производительность
4.4. Особенности
Если мы сравним функции и опции, мы увидим, что в продукте Oracle есть регистратор полетов, управление полетами Java и функции совместного использования данных класса приложений , в то время как OpenJDK имеет функцию отображения шрифтов .
Кроме того, Oracle имеет больше возможностей для сбора мусора и лучшие средства визуализации.
4.5. Развитие и популярность
Как мы видим по ссылке из предыдущего подраздела, когда речь заходит о популярности у ведущих компаний, которые используют наборы для разработки Java в своих инструментах, таких как Android Studio или IntelliJ IDEA, раньше более предпочтительным был Oracle JDK, но оба они перешли на JetBrains на основе OpenJDK сборки .
С другой стороны, основные дистрибутивы Linux (Fedora, Ubuntu, Red Hat Enterprise Linux) предоставляют OpenJDK в качестве реализации Java SE по умолчанию.
5. Изменения, Произошедшие С Java 11
Прежде всего, Oracle изменит свою историческую лицензию “ BCL ” на комбинацию лицензии с открытым исходным кодом GNU General Public License v2, за исключением пути к классам (GPLv2+CPE) и коммерческой лицензии при использовании Oracle JDK как части продукта или услуги Oracle или когда программное обеспечение с открытым исходным кодом не приветствуется.
Каждая лицензия будет иметь разные сборки, но они будут функционально идентичны, с некоторыми отличиями в косметике и упаковке.
Давайте рассмотрим основные отличия:
6. Другие реализации JDK
Давайте теперь быстро взглянем на другие активные реализации Java Development Kit.
6.1. Бесплатный и открытый исходный код
Следующие реализации, перечисленные в алфавитном порядке, являются открытыми и бесплатными для использования:
6.2. Собственные Реализации
Существуют также реализации, защищенные авторским правом:
7. Заключение
В этой статье мы сосредоточились на двух самых популярных на сегодняшний день наборах для разработки Java.
Сначала мы описали каждый из них, а затем подчеркнули наиболее заметные различия между ними. Затем мы обратили особое внимание на изменения и различия, произошедшие с Java 11. Наконец, мы перечислили другие активные реализации, доступные сегодня.
Так много 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.
Национальная библиотека им. Н. Э. Баумана
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 продолжает принимать взносы в рамках существующих соглашений с вкладчиками и принимать новых участников на тех же условиях. На данный момент нет планов по изменению модели участия.
Microsoft открыла бесплатный доступ к своей фирменной Java всем желающим
Java-дистрибутив Microsoft
Microsoft выпустила предварительную версию собственного дистрибутива OpenJDK с долгосрочной поддержкой. Об этом сообщается в блоге разработчиков корпорации.
На официальном сайте Microsoft представлены бесплатные сборки на базе OpenJDK 11 под архитектуру x64 для серверного и десктопного применения в Windows, macOS и Linux. Компания обещает поддержку Java 11 как минимум до 2024 г. Там же опубликованы ссылки на находящийся в раннем доступе дистрибутив OpenJDK 16 для систем на базе процессоров ARM64.
Microsoft утверждает, что дистрибутив прошел тестирование JCK, который используется для проверки совместимости со спецификацией Java 11. Компания позиционирует Microsoft JDK как простую замену любому другому дистрибутиву OpenJDK. На данный момент дистрибутивы не рекомендуются к применению в «боевых условиях» ввиду их экспериментального статуса.
Тем не менее, пользователи облачных сервисов Azure уже могут опробовать новинку через Azure Shell, а в течение 2021 г. Microsoft JDK станет дистрибутивом по умолчанию для сервисов Azure, говорится в блоге разработчиков.
Что такое OpenJDK и Java
OpenJDK – это проект по созданию полностью совместимого набора инструментов разработки и запуска приложений на языке программирования Java, состоящего исключительно из свободного и открытого исходного кода. Набор включает себя компилятор в байт-код Java (javac), стандартные библиотеки классов Java, примеры, документацию, утилиты и среду выполнения Java (JRE).
Первоначальный разработчик Java – компания Sun Microsystems, в 2009 г. поглощенная Oracle, в 2007 г. открыла исходный код Java под свободной лицензией GNU GPL v2 и создала проект OpenJDK, позволив другим компаниям участвовать в развитии платформы. Начиная с версии 11, которая вышла в сентябре 2018 г., платформа Oracle JDK является платной для бизнес-пользователей.
Microsoft называет Java одним из наиболее важных языков программирования, применяемых в настоящее время. Разработчики используют Java для решения широкого круга задач: от DIY-проектов до критически важных корпоративных приложений. Компания отмечает рост востребованности Java-технологий среди пользователей фирменного облака Azure и инструментов разработки.
Согласно рейтингу, составленному «Работа.ру», на начало марта 2021 г. в сфере ИТ разработчики Java на «удаленке» могли рассчитывать на ежемесячную зарплату до 250 тыс. руб. По данным рейтинга, Java-программист – одна из самых высокооплачиваемых работ.
Как Java применяется в Microsoft
По словам представителей Microsoft, в настоящее время в инфраструктуре компании развернуто более 500 тыс. экземпляров виртуальных машин Java (не принимая в расчет службы Azure и рабочие нагрузки клиентов), которые обеспечивают работу бэкенд-микросервисов, систем больших данных, брокеров сообщений, потоковых сервисов и игровых серверов. Более 140 тыс. из этих машин используют сборку OpenJDK, подготовленную специалистами компании.
Microsoft использует целый ряд проектов с открытым исходным кодом на языке Java для поддержания работоспособности глобальной инфраструктуры облака Azure, а также в собственных системах для анализа больших данных и логов. Бэкенды соцсетей LinkedIn и Yammer, принадлежащих Microsoft, в частности, почти полностью реализованы на базе распределенных облачных микросервисов, написанных на Java.
В августе 2019 г. Microsoft поглотила британскую компанию jClarity, которая в основном известна благодаря своим продуктам Censum и Illuminate в помощь Java-разработчикам. Условия сделки стороны не раскрывали.
Американская корпорация тогда сообщила, что намерена использовать технологии jClarity для оптимизации рабочих процессов Java в облачной инфраструктуре Azure. Однако не исключено, что основной интерес для Microsoft представляла экспертиза команды разработчиков из jClarity, которая на тот момент была одним из участников проекта AdoptOpenJDK – еще одного альтернативного дистрибутива OpenJDK, вносящих значительный вклад.
JDK российского разработчика
В декабре 2020 г. CNews сообщил о том, что группа «М.видео-Эльдорадо» перевела часть своих ИТ-систем на Liberica JDK.
В октябре 2020 г. CNews писал, что фирма «1С» выбрала отечественную платформу Liberica JDK компании Bellsoft в качестве стандартного средства запуска компонентов программ системы «1С:предприятие», написанных на языке программирования Java.
В конце сентября 2020 г. оператор платежной системы «Мир», «Национальная система платежных карт» (НСПК), перешел на Liberica JDK.