Dne 2. srpna projekt AdoptOpenJDK oznámil první vydání sestavení OpenJDK pod novým názvem Eclipse Temurin. Tento produkt, implementující otevřené prostředí Java SE, nově přechází pod projekt Eclipse Adoptium. Jde o projekt nejvyšší úrovně zahrnující nejen vývoj a vydávání binárních souborů OpenJDK, ale i další podprojekty, které se věnují inovacím (Eclipse Adoptium Incubator), testování kvality produktu (Eclipse AQAvit), sledováním výkonu Java aplikací (Eclipse Mission Control) a kontrolou kompatibility s Oracle Java SE TCK (Eclipse Temurin Compliance).
Eclipse Temurin vychází z původní filozofie binárek AdoptOpenJDK, avšak navyšuje svoje nároky na kvalitu produktu. To se děje mimo jiné díky navázání spolupráce s Oraclem (za přispění Eclipse Foundation), který poskytl licenci k Oracle Java SE TCK. Tím bude zajištěn dohled nad kompatibilitou se specifikací Javy, takže Temurin nebude testován jen v rámci AQAvit, ale i v Java SE TCK (někdy je také označováno jako JCK). Výměnou za tuto dohodu nebude moci v rámci Temurinu vycházet jiné běhové prostředí než HotSpot. Výdej binárek s virtuálním strojem Eclipse OpenJ9, který byl v AdoptOpenJDK k dispozici, přebírá IBM pod novým názvem IBM Semeru, jak bylo oznámeno na vývojářském blogu IBM. Nutno podotknout, že to byla právě IBM, kdo v roce 2017 předal OpenJ9 (původně IBM J9) nadaci Eclipse a otevřel tak toto běhové prostředí komunitě.
Proč je Eclipse Temurin zajímavý?
K využívání otevřené implementace Javy můžeme nalézt více důvodů. Jako hlavní by se daly uvést dva: licencování a podpora. Oba spolu určitým způsobem souvisí, konkrétně u vydání Oracle Java SE 8 byla v roce 2019 ukončena veřejná podpora a zároveň u ní došlo ke změně licencování. Ačkoliv je za těchto podmínek nadále možné běhové prostředí (JRE) stáhnout, nově je lze využívat pouze pro osobní účely nebo pro vývoj aplikací. V komerčním prostředí je nutné si od Oraclu zaplatit rozšířenou podporu produktu. Posledním vydáním JRE dostupným pro podniky před změnou licence je tedy Java SE 8u202.
Jako další důvod by se dala označit neexistence holého běhového prostředí (JRE), které od verze Oracle Java SE 9 není k dispozici ke stažení. Je to důsledkem implementace nového návrhu stavby Java aplikací (projekt Jigsaw – skládačka), kde se přechází na modulární obrazy. To klade nároky na vývojáře aplikací, kteří by měli při kompilaci aplikace určit, které Java moduly se používají a ty se pak zakompilují společně s vlastní aplikací. Následně by měl vývojář dodat celkový obraz, ve kterém je jak aplikace, tak i moduly a základní běhové prostředí Javy. AdoptOpenJDK a následně Eclipse Temurin umožňují JRE stáhnout i pro verzi Java 11 a vyšší, takže pokud po nich někdo touží, jsou zde k dispozici.
Ještě jedně věc stojí za zmínku a to, že se do projektu Eclipse Adoptium zapojilo několik důležitých hráčů na poli hostování Java aplikací, jmenovitě Alibaba Cloud, Azul, Huawei, IBM, Karakun, Microsoft, Red Hat, iJUG, managecat a New Relic. Někteří z nich vydávají OpenJDK pod vlastním názvem (např. Alibaba Dragonwell, Azul Zulu, IBM Semeru, Microsoft OpenJDK) a v některých případech poskytují i svoji komerční podporu.
IcedTea-Web: Náhrada za Java Web Start
Změny v návrhu Java aplikací se nedotkly jen struktury, ale i stylu spouštění aplikací. Od verze Java 9 je opuštěna technologie Java Web Start (JWS), která umožňovala otevřít aplikaci skrze spouštěč definovaný v souboru s příponou JNLP. Ten obsahoval potřebné informace o umístění knihoven a využíval asociaci přípony JNLP, takže pokud bylo v systému nainstalováno běhové prostředí Java, bylo možné jedním klepnutím spustit aplikaci, aniž by byla dříve v systému nainstalována.
Princip jednoduchého volání Java aplikací byl poměrně rozšířen napříč různými výrobci, a tak rozhodnutí o ukončení podpory JWS vyvolalo diskusi. Toto rozhodnutí vývojáře zaskočilo také proto, že tato technologie byla původně určena jako doporučená náhrada poté, co výrobci internetových prohlížečů postupně ukončili podporu pluginů a tudíž nebylo dále možné spouštět Java applety.
Pro ty, kdo nadále potřebují podporu spouštěčů JNLP, může být zajímavý produkt IcedTea-Web. Ten je možné v tuto chvíli získat na původních stránkách projektu AdoptOpenJDK nebo na GitHubu.
Instalace
Eclipse Temurin je možné stáhnout ze stránek adoptium.net nebo z GitHubu, a to pro různé systémy a architektury. Buď v podobě komprimovaného balíku, který stačí rozbalit, nebo instalátoru – pro systém Windows jako MSI balíček a pro MacOS jako instalační PKG.
Závěr
Projekt Adoptium jako pokračovatel AdoptOpenJDK vychází vstříc těm, kdo hledají alternativu Oracle Javy SE verze 8 nebo chtějí využít Java prostředí v cloudu díky dostupnosti kontejneru Eclipse Temurin na Docker Hubu. Za zkoušku stojí i doplněk IcedTea-Web, který pomůže těm, kdo potřebují mít k dispozici řešení pro spouštění aplikací z JNLP souborů. Dobré je, že jsou do projektu Eclipse Adoptium zapojené velké firmy, které přispívají k jeho rozvoji. Dá se tedy předpokládat, že tento projekt má budoucnost a bude mít své místo v prostředí jazyka Java.