Historie verzí Javy - Java version history

Jazyk Java prošel od JDK  1.0 několika změnami , stejně jako mnoha přidáním tříd a balíků do standardní knihovny . Od J2SE 1.4 je vývoj jazyka Java řízen procesem Java Community Process (JCP), který pomocí Java Specification Requests (JSRs) navrhuje a specifikuje doplňky a změny na platformě Java . Jazyk je specifikován specifikací Java Language Specification (JLS); změny JLS jsou spravovány podle JSR 901 .

Kromě jazykových změn byly v průběhu let provedeny další změny v knihovně tříd Java , která se rozrostla z několika stovek tříd v JDK 1,0 na více než tři tisíce v J2SE 5. Celá nová API , jako Swing a Java2D , byly zavedeny a mnoho z původních tříd a metod JDK 1.0 bylo zastaráno . Některé programy umožňují převod programů Java z jedné verze platformy Java na starší (například Java 5.0 backported to 1.4) (viz nástroje Java backporting ).

Pokud jde o plán podpory Oracle Java SE, verze 17, 11 a 8 jsou aktuálně podporované verze dlouhodobé podpory (LTS), kde zákazníci Oracle získají podporu Oracle Premier. Poslední veřejnou aktualizaci bezplatného softwaru Java 8 LTS pro komerční použití vydala společnost Oracle v lednu 2019, zatímco společnost Oracle nadále neomezeně uvolňuje veřejné aktualizace Java 8 pro vývoj a osobní použití. Java 10, dříve podporovaná verze pro rychlé vydání, měla podporu ukončenou v září 2018 a začala podpora pro Java 11 ve stejný den. Java 7 již není veřejně podporována. V případě Java 11 nebude Oracle pro veřejnost poskytovat dlouhodobou podporu; místo toho se očekává, že práci bude provádět širší komunita OpenJDK , jako Eclipse Adoptium nebo další.

Obecná dostupnost Java 17 začala 14. září 2021 a Java 18 je ve vývoji.

Verze Datum
vydání
Konec bezplatných
veřejných aktualizací
Prodloužená
podpora do
Stará verze, již není udržována: JDK Beta 1995 ? ?
Stará verze, již není udržována: JDK 1,0 Leden 1996 ? ?
Stará verze, již není udržována: JDK 1.1 Únor 1997 ? ?
Stará verze, již není udržována: J2SE 1.2 Prosinec 1998 ? ?
Stará verze, již není udržována: J2SE 1.3 Květen 2000 ? ?
Stará verze, již není udržována: J2SE 1.4 Únor 2002 Říjen 2008 únor 2013
Stará verze, již není udržována: J2SE 5.0 Září 2004 Listopad 2009 Duben 2015
Stará verze, již není udržována: Java SE 6 Prosinec 2006 duben 2013 Prosinec 2018
Prosinec 2026 pro Azul
Stará verze, již není udržována: Java SE 7 Červenec 2011 Duben 2015 Července 2022
Starší verze, ale stále udržovaná: Java SE 8 (LTS) Březen 2014 Leden 2019 pro Oracle (komerční)
Prosinec 2030 pro Oracle (nekomerční)
Prosinec 2030 pro Azul
Květen 2026 pro IBM Semeru
Minimálně květen 2026 pro Eclipse Adoptium
Nejméně květen 2026 pro Amazon Corretto
Prosince 2030
Stará verze, již není udržována: Java SE 9 Září 2017 Března 2018 pro OpenJDK N/A
Stará verze, již není udržována: Java SE 10 Března 2018 Září 2018 pro OpenJDK N/A
Starší verze, ale stále udržovaná: Java SE 11 (LTS) Září 2018 Září 2026 pro Azul
Říjen 2024 pro IBM Semeru
Minimálně říjen 2024 pro Eclipse Adoptium
Minimálně září 2027 pro Amazon Corretto
Minimálně říjen 2024 pro Microsoft
Září 2026
Září 2026 pro Azula
Stará verze, již není udržována: Java SE 12 Března 2019 Září 2019 pro OpenJDK N/A
Stará verze, již není udržována: Java SE 13 Září 2019 Březen 2020 pro OpenJDK N/A
Stará verze, již není udržována: Java SE 14 Března 2020 Září 2020 pro OpenJDK N/A
Stará verze, již není udržována: Java SE 15 Září 2020 Březen 2021 pro OpenJDK
Březen 2023 pro Azul
N/A
Stará verze, již není udržována: Java SE 16 Března 2021 Září 2021 pro OpenJDK N/A
Aktuální stabilní verze: Java SE 17 (LTS) Září 2021 Září 2029 pro Azul
Minimálně září 2027 pro Microsoft
Minimálně TBA pro Eclipse Adoptium
Září 2029 nebo později
Září 2029 pro Azula
Budoucí vydání: Java SE 18 Března 2022 Září 2022 pro OpenJDK N/A
Budoucí vydání: Java SE 19 Září 2022 Březen 2023 pro OpenJDK N/A
Budoucí vydání: Java SE 20 Března 2023 Září 2023 pro OpenJDK N/A
Budoucí vydání: Java SE 21 (LTS) Září 2023 TBA Září 2031
Legenda:
Stará verze
Starší verze, stále udržovaná
Nejnovější verze
Nejnovější verze náhledu
Budoucí vydání

Dějiny

V září 2017 navrhl Mark Reinhold, hlavní architekt platformy Java, změnu uvolňovacího vlaku na „vydání jedné funkce každých šest měsíců“ namísto tehdejšího dvouletého plánu. Tento návrh vstoupil v platnost pro všechny následující verze a stále je aktuálním plánem vydání.

JDK 1,0

JDK 1,0
Vydáno 23. ledna 1996 ; Před 25 lety ( 1996-01-23 )

První verze byla vydána 23. ledna 1996. První stabilní verze, JDK 1.0.2, se nazývá Java 1.

JDK 1.1

JDK 1.1
Vydáno 19. února 1997 ; Před 24 lety ( 1997-02-19 )

Hlavní přírůstky ve verzi 19. února 1997 zahrnovaly:

J2SE 1.2

J2SE 1.2
Krycí jméno Hřiště
Vydáno 8. prosince 1998 ; Před 22 lety ( 08.12.1998 )

Hřiště s kódovým označením

Vydání 8. prosince 1998 a následující vydání prostřednictvím J2SE 5.0 byly rebranded retrospektivně Java 2 a název verze "J2SE" ( Java 2 Platform, Standard Edition ) nahradil JDK, aby se odlišila základní platforma od J2EE ( Java 2 Platform, Enterprise Edition ) a J2ME ( Java 2 Platform, Micro Edition ). Jednalo se o velmi významné vydání Javy, protože ztrojnásobilo velikost platformy Java na 1520 tříd v 59 balíčcích. Mezi hlavní přírůstky patří:

J2SE 1.3

J2SE 1.3
Krycí jméno Poštolka
Vydáno 8. května 2000 ; Před 21 lety ( 2000-05-08 )

Krycí jméno Kestrel

Nejpozoruhodnější změny ve vydání z 8. května 2000 byly:

J2SE 1.4

J2SE 1.4
Krycí jméno Merlin
Vydáno 6. února 2002 ; Před 19 lety ( 2002-02-06 )
Konec veřejné podpory Říjen 2008 ( 2008-10 )
Konec placené podpory únor 2013 ( 2013-02 )

Krycí jméno Merlin

Vydání 6. února 2002 bylo první verzí platformy Java vyvinuté v rámci Java Community Process jako JSR 59 . Mezi hlavní změny patří:

Veřejná podpora a aktualizace zabezpečení pro Javu 1.4 skončily v říjnu 2008. Placené aktualizace zabezpečení pro zákazníky Oracle skončily v únoru 2013.

J2SE 5.0

J2SE 5.0
Krycí jméno Tygr
Vydáno 30. září 2004 ; Před 17 lety ( 2004-09-30 )
Konec veřejné podpory Listopad 2009 ( 2009-11 )
Konec placené podpory Duben 2015 ( 2015-04 )

Krycí jméno Tygr

Vydání 30. září 2004 mělo původně číslo 1,5, které se stále používá jako číslo interní verze. Číslo bylo změněno tak, aby „lépe odráželo úroveň vyspělosti, stability, škálovatelnosti a zabezpečení J2SE“. Tato verze byla vyvinuta pod JSR 176 .

J2SE 5.0 vstoupilo do období ukončení veřejných aktualizací 8. dubna 2008; aktualizace již nejsou k dispozici veřejnosti od 3. listopadu 2009. Aktualizace byly placeným zákazníkům Oracle k dispozici do května 2015.

Tiger přidal řadu významných nových jazykových funkcí:

  • Obecná : zajišťuje bezpečnost typu kompilace (statického) typu pro kolekce a eliminuje potřebu většiny typcastů (převod typů) (specifikováno v JSR 14 )
  • Metadata : také nazývaná anotace ; umožňuje označit jazykové konstrukce, jako jsou třídy a metody, dodatečnými daty, která pak mohou být zpracována nástroji s vědomím metadat (specifikováno v JSR 175 )
  • Autoboxing / unboxing : automatické převody mezi primitivními typy (například int) a primitivními obalovými třídami (jako Integer) (specifikováno v JSR 201 )
  • Výčty : na enumklíčové slovo vytváří typesafe , seřazený seznam hodnot (například Day.MONDAY, Day.TUESDAY, atd.); dříve to bylo možné dosáhnout pouze konstantními celými čísly, která nejsou typově bezpečná, nebo ručně vytvořenými třídami (vzorový výčet typů) (specifikováno v JSR 201 )
  • Varargs : poslední parametr metody lze nyní deklarovat pomocí názvu typu následovaného třemi tečkami (např. void drawtext(String... lines)); ve volacím kódu lze použít libovolný počet parametrů tohoto typu a ty jsou poté umístěny do pole, které má být předáno metodě, nebo alternativně může volající kód předat pole tohoto typu
  • Vylepšená for eachsmyčka: forSyntaxe smyčky je rozšířena o speciální syntaxi pro iteraci přes každý člen pole nebo libovolného Iterable, jako jsou standardní Collectiontřídy (specifikované v JSR 201 )
  • Vylepšená sémantika provádění pro vícevláknové programy Java; nový paměťový model Java řeší problémy s komplexností, efektivitou a výkonem předchozích specifikací
  • Statický dovoz

Došlo také k následujícím vylepšením standardních knihoven:

Java 5 je poslední verzí Javy, která oficiálně podporuje Microsoft Windows 98 a Windows ME , zatímco Windows Vista byla nejnovější verze Windows, na které byla J2SE 5 podporována před koncem životnosti Java 5 v říjnu 2009.

Java 5 Update 5 (1.5.0_05) je poslední verzí Javy, která fungovala v systému Windows 95 (s nainstalovaným Internet Explorerem 5.5 ) a Windows NT 4.0 .

Java 5 byla poprvé k dispozici na Apple Mac OS X 10.4 (Tiger) a byla výchozí verzí Java nainstalovanou na Apple Mac OS X 10.5 (Leopard).

Veřejná podpora a aktualizace zabezpečení pro Javu 1.5 skončily v listopadu 2009. Placené aktualizace zabezpečení pro zákazníky Oracle skončily v dubnu 2015.

Změna verzí

Tato verze představila nový verzovací systém pro jazyk Java, ačkoli starý verzovací systém byl nadále používán pro vývojářské knihovny:

K identifikaci této verze standardní edice Java 2 Platform slouží obě čísla verzí „1.5.0“ a „5.0“. Verze „5.0“ je verze produktu, zatímco „1.5.0“ je verze pro vývojáře. Číslo „5,0“ slouží k lepšímu vyjádření úrovně vyspělosti, stability, škálovatelnosti a zabezpečení J2SE.

Tato korespondence pokračovala v pozdějších verzích (Java 6 = JDK 1.6, Java 7 = JDK 1.7 a tak dále).

Aktualizace Java 5

Tabulka aktualizací Java 5
Uvolnění Datum vydání Přednosti
Java SE 5 2004-10-04 Metadata, obecné typy, autoboxování a automatické rozbalování primitivních typů, vylepšená forsmyčka, vyjmenované typy, statický import, formátované I/O, varargs a souběžné nástroje. Vylepšená doba spuštění a prostorová paměť. Sdílení dat pouze pro čtení mezi více spuštěnými JVM. Vzdálené monitorování a správa. Nové API pro profilování JVM. Programové generování trasování zásobníku. Podpora XML 1.1 s obory názvů, schématem XML, SAX 2.0.2, DOM úrovně 3 a XSLT s rychlým kompilátorem XSLTC. Podpora Unicode 4.0.
Aktualizace Java SE 5 1 2004-12-25 50 chyb bylo opraveno.
Aktualizace Java SE 5 2 16. března 2005 Bylo opraveno několik havárií. Program je nyní kompilován s lepší optimalizací. Byly provedeny opravy chyb kalendáře a další opravy chyb.
Aktualizace Java SE 5 3 2005-05-03 Toto vydání opravuje několik chyb, včetně pádů pluginu Linux Mozilla.
Aktualizace Java SE 5 4 2005-07-04 S vydáním podpora J2SE pro Windows 64-bit pokročila z kandidáta na vydání do konečného vydání. Tato verze běží na počítačích s 64bitovým režimem AMD64/EM64T s edicemi Windows Server 2003 x64.
Aktualizace Java SE 5 5 18. 2005 Bylo opraveno několik chyb a došlo k vylepšení výkonu. Poslední vydání pro Windows 95 a Windows NT 4.0.
Aktualizace Java SE 5 6 2005-12-07 Před touto aktualizací mohl applet nebo aplikace určit verzi JRE, na které bude spuštěna. To se změnilo. Všechny aplety jsou spuštěny s nejnovější verzí JRE.
Aktualizace Java SE 5 7 29. června 2006 Bylo opraveno několik chyb a došlo k vylepšení výkonu.
Aktualizace Java SE 5 8 13. června 2006 Bylo opraveno několik chyb a došlo k vylepšení výkonu.
Aktualizace Java SE 5 9 12. 11. 2006 Tato verze opravuje několik menších regresí.
Aktualizace Java SE 5 10 22. 12. 2006 Byla přidána implementace zařízení pro oznámení událostí epoll I/O, podporovaného Linuxem 2.6. Mnoho chyb bylo opraveno.
Aktualizace Java SE 5 11 2007-03-08 Bylo opraveno několik chyb a došlo k vylepšení výkonu.
Aktualizace Java SE 5 12 2007-06-11
Aktualizace Java SE 5 13 2007-10-05 Bylo opraveno několik bezpečnostních chyb v Java Web Start, které se týkaly místního přístupu k souborům. Byla opravena chyba zabezpečení v prostředí JRE, která umožňovala obcházení omezení přístupu k síti. Bylo opraveno několik dalších bezpečnostních problémů a drobných chyb.
Aktualizace Java SE 5 14
Aktualizace Java SE 5 15 2008-03-06 Bylo opraveno několik pádů z důvodu překračování mezipaměti haldy a několik dalších chyb. Nové kořenové certifikáty od AOL, DigiCert a TrustCenter jsou nyní zahrnuty.
Aktualizace Java SE 5 16 23. července 2008 Toto vydání opravuje několik bezpečnostních nedostatků, jako jsou chyby zabezpečení DoS, přetečení vyrovnávací paměti a další chyby, které by mohly vést ke zhroucení nebo které by poskytly appletům přístup k určitým systémovým prostředkům. Tyto chyby zabezpečení byly umístěny v prostředí Java Web Start, v agentu pro správu Java Management Extensions (JMX) a ve funkcích pro zpracování dat XML.
Aktualizace Java SE 5 17 3. 12. 2008 Implementace znakové sady UTF-8 byla aktualizována, aby zvládla nejkratší formu bajtových sekvencí UTF-8, což zavedlo nekompatibilitu z předchozích verzí. Byly přidány nové kořenové certifikáty. Mnoho chyb bylo opraveno.
Aktualizace Java SE 5 18 2009-03-25 Bylo vyřešeno několik bezpečnostních problémů. Chování funkce JNDI k ukládání a načítání objektů Java v adresáři LDAP bylo mírně upraveno. Bylo přidáno pět nových kořenových certifikátů. Mnoho chyb bylo opraveno.
Aktualizace Java SE 5 19 2009-05-29 Byla přidána podpora pro několik systémových konfigurací. Byla přidána podpora servisního štítku. Mnoho chyb bylo opraveno, včetně několika selhání a úniku paměti.
Aktualizace Java SE 5 20 2009-08-06 Bylo vyřešeno několik zranitelností zabezpečení, například potenciální přístup k systému nedůvěryhodnými applety a přetečení celých čísel při zpracování obrazu a v Unpack200. Bylo přidáno několik nových kořenových certifikátů. Mnoho dalších drobných chyb bylo opraveno.
Aktualizace Java SE 5 21 2009-09-09 Mnoho drobných chyb bylo opraveno.
Aktualizace Java SE 5 22 2009-11-04 Toto vydání znamená konec životnosti (EOSL) pro Java 5 a je jeho finální veřejnou verzí. Bylo opraveno několik bezpečnostních chyb, hlášených jako Sun Alerts 269868, 270474, 270475 a 270476. Bylo opraveno několik dalších chyb. Kromě toho byly přidány dva nové kořenové certifikáty.
Aktualizace Java SE 5 23 13. ledna 2010 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10 ; 32 oprav zabezpečení.
Aktualizace Java SE 5 24 15. dubna 2010 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 2 opravy zabezpečení.
Aktualizace Java SE 5 25 2010-07-07 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 26 bezpečnostních oprav.
Aktualizace Java SE 5 26 2010-10-12 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 2 opravy zabezpečení.
Aktualizace Java SE 5 27 08. 12. 2010 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 22 bezpečnostních oprav.
Aktualizace Java SE 5 28 15. února 2011 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 22 bezpečnostních oprav
Aktualizace Java SE 5 29 21. března 2011 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 21 bezpečnostních oprav.
Aktualizace Java SE 5 30 2011-06-07 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 1 oprava zabezpečení.
Aktualizace Java SE 5 31 16. 08. 2011 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 10 bezpečnostních oprav.
Aktualizace Java SE 5 32 18. 10. 2011 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 20 bezpečnostních oprav
Aktualizace Java SE 5 33 12. 12. 2011 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 21 bezpečnostních oprav.
Aktualizace Java SE 5 34 14. 2012 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 14 bezpečnostních oprav
Aktualizace Java SE 5 35 26. dubna 2012 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 5 bezpečnostních oprav.
Aktualizace Java SE 5 36 2012-06-12 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 14 bezpečnostních oprav
Aktualizace Java SE 5 38 14. 08. 2012 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 30 bezpečnostních oprav
Aktualizace Java SE 5 39 19. 02. 2013 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 50 bezpečnostních oprav
Aktualizace Java SE 5 40 19. 02. 2013 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 5 bezpečnostních oprav
Aktualizace Java SE 5 41 2013-03-04 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 2 opravy zabezpečení
Aktualizace Java SE 5 45 16. dubna 2013 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 42 bezpečnostních oprav
Aktualizace Java SE 5 51 18. 06. 2013 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 40 bezpečnostních oprav
Aktualizace Java SE 5 55 15. 10. 2013 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 51 bezpečnostních oprav
Aktualizace Java SE 5 61 14. ledna 2014 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 36 bezpečnostních oprav
Aktualizace Java SE 5 65 15. dubna 2014 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 37 bezpečnostních oprav
Aktualizace Java SE 5 71 15. července 2014 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 20 bezpečnostních oprav
Aktualizace Java SE 5 75 16. 10. 2014 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 25 bezpečnostních oprav
Aktualizace Java SE 5 81 2015-01-21 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 19 bezpečnostních oprav
Aktualizace Java SE 5 85 14. dubna 2015 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 14 bezpečnostních oprav

Java SE 6

Java SE 6
Krycí jméno Mustang
Vydáno 11. listopadu 2006 ; Před 14 lety ( 2006-11-11 )
Konec veřejné podpory únor 2013 ( 2013-02 )

Krycí jméno Mustang

Od verze vydané 11. prosince 2006 společnost Sun nahradila název „J2SE“ jazykem Java SE a z čísla verze vypustila „0,0“. Interní číslování pro vývojáře zůstává 1.6.0.

Tato verze byla vyvinuta pod JSR 270 .

Během fáze vývoje byly přibližně jednou týdně vydávány nové verze včetně vylepšení a oprav chyb. Beta verze byly vydány v únoru a červnu 2006, což vedlo ke konečnému vydání, ke kterému došlo 11. prosince 2006.

Hlavní změny zahrnuté v této verzi:

  • Podpora starších verzí Win9x byla zrušena; neoficiálně byla Java 6 Update 7 poslední verzí Javy, která fungovala na těchto verzích Windows. Předpokládá se, že je to kvůli velkým změnám v aktualizaci 10.
  • Podpora skriptovacího jazyka ( JSR 223 ): Obecné API pro těsnou integraci se skriptovacími jazyky a integrovanou integraci Mozilla JavaScript Rhino .
  • Dramatické vylepšení výkonu pro základní platformu a Swing .
  • Vylepšená podpora webové služby prostřednictvím JAX-WS ( JSR 224 ).
  • Podpora JDBC 4.0 ( JSR 221 ).
  • Java Compiler API ( JSR 199 ): API umožňující programu Java vybrat a vyvolat kompilátor Java programově.
  • Upgrade JAXB na verzi 2.0: Včetně integrace analyzátoru StAX .
  • Podpora zásuvných anotací ( JSR 269 ).
  • Mnoho vylepšení GUI , jako je integrace SwingWorker do API, řazení a filtrování tabulek a dvojité ukládání do vyrovnávací paměti Swing (odstranění efektu šedé oblasti).
  • Mezi vylepšení JVM patří: synchronizace a optimalizace výkonu kompilátoru , nové algoritmy a upgrady na stávající algoritmy shromažďování odpadků a výkon při spuštění aplikace.

Java 6 lze nainstalovat do systému Mac OS X 10.5 (Leopard) běžícího na 64bitových procesorech (Core 2 Duo a vyšší). Java 6 podporují i ​​32bitové a 64bitové počítače se systémem Mac OS X 10.6 (Snow Leopard).

Java 6 dosáhla konce své podporované životnosti v únoru 2013, kdy bylo naplánováno zastavení všech veřejných aktualizací, včetně aktualizací zabezpečení. Společnost Oracle vydala v březnu a dubnu 2013 další dvě aktualizace Java 6, které opravily některé chyby zabezpečení.

Aktualizace Java 6

Po vydání Java 6 vydala společnost Sun a později Oracle několik aktualizací, které, aniž by měnily veřejné API, zlepšovaly použitelnost koncových uživatelů nebo opravovaly chyby.

Tabulka aktualizací Java 6
Uvolnění Datum vydání Přednosti
Java SE 6 23. 12. 2006 Tato verze přináší mnoho vylepšení v oblasti webových služeb, skriptování, databází, připojitelných poznámek a zabezpečení, jakož i kvality, kompatibility a stability. JConsole je nyní oficiálně podporována. Byla přidána podpora Java DB.
Aktualizace Java SE 6 1 2007-05-07
Aktualizace Java SE 6 2 2007-07-03
Aktualizace Java SE 6 3 2007-10-03
Aktualizace Java SE 6 4 14. ledna 2008 HotSpot VM 10
Aktualizace Java SE 6 5 2008-03-05 Bylo odstraněno několik bezpečnostních nedostatků. Nové kořenové certifikáty od AOL, DigiCert a TrustCenter jsou nyní zahrnuty.
Aktualizace Java SE 6 6 16. dubna 2008 Bylo zavedeno řešení neslavného problému s tvrzením o zamykání Xlib/XCB. Byl opraven nevracení paměti při použití ověřování Kerberos s LoginContext. Bylo opraveno několik dalších chyb.
Aktualizace Java SE 6 7 Neoficiálně je Java SE 6 Update 7 (1.6.0.7) poslední verzí Javy, která fungovala na operačních systémech Win9x.
Aktualizace Java SE 6 10 15. 10. 2008 HotSpot VM 11. Mezi hlavní změny této aktualizace patří:
  • Java Deployment Toolkit, sada funkcí JavaScriptu usnadňující nasazení appletů a aplikací Java Web Start .
  • Java Kernel, malý instalační program zahrnující pouze nejčastěji používané třídy JRE. V případě potřeby se stáhnou další balíčky.
  • Vylepšený aktualizátor.
  • Vylepšené vytváření verzí a podpora pack200: podpora na straně serveru již není nutná.
  • Java Quick Starter, pro zkrácení doby spuštění za studena.
  • Vylepšený výkon grafických primitiv Java2D ve Windows pomocí Direct3D a hardwarové akcelerace.
  • Nový vzhled a dojem Swing s názvem Nimbus a založený na syntetizátoru .
  • Doplněk Java příští generace: aplety nyní běží v samostatném procesu a podporují mnoho funkcí aplikací Web Start.
Aktualizace Java SE 6 11 3. 12. 2008 13 bezpečnostních oprav
Aktualizace Java SE 6 12 12. prosince 2008 Žádné opravy zabezpečení; 64bitový doplněk Java (pouze pro 64bitové webové prohlížeče); Podpora Windows Server 2008 ; vylepšení výkonu grafiky a aplikací JavaFX
Aktualizace Java SE 6 13 2009-03-24 7 oprav zabezpečení, JNDI ukládá a načítá objekty Java v LDAP mírně upraveno, JMX Change (createMBeanunregisterMBean), přidány 4 nové kořenové certifikáty
Aktualizace Java SE 6 14 2009-05-28 HotSpot VM 14. Tato verze obsahuje rozsáhlé aktualizace výkonu kompilátoru JIT, komprimovaných ukazatelů pro 64bitové počítače a také podporu pro nízko pozastavený odpadkový koš G1 (Garbage First).

Tato -XX:+DoEscapeAnalysisvolba nasměruje kompilátor JIT HotSpot, aby pomocí únikové analýzy určil, zda lze na hromadu místo haldy přidělit místní objekty .

Někteří vývojáři si všimli problému zavedeného v této verzi, který způsobuje, že debuggery zdánlivě náhodně vynechávají zarážky. Sun má odpovídající chybu, která problém sleduje. Řešení se týká virtuálních počítačů klienta a serveru. Použitím této -XX:+UseParallelGCmožnosti zabráníte selhání. Dalším řešením je vrátit se zpět k aktualizaci 13 nebo upgradovat na aktualizaci 16.

Aktualizace Java SE 6 15 2009-08-04 Představena funkce patch-in-place
Aktualizace Java SE 6 16 11. 08. 2009 Opraven problém zavedený v aktualizaci 14, který způsoboval, že debuggery chyběly zarážky
Aktualizace Java SE 6 17 2009-11-04 Opravy zabezpečení; dva nové kořenové certifikáty
Aktualizace Java SE 6 18 13. ledna 2010 Žádné opravy zabezpečení; Hotspot VM 16; podpora pro Ubuntu 8.04 LTS Desktop Edition, SLES 11, Windows 7 , Red Hat Enterprise Linux 5.3, Firefox 3.6, VisualVM 1.2; aktualizovaný Java DB; mnoho vylepšení výkonu
Aktualizace Java SE 6 19 30. března 2010 Opravy zabezpečení; změny kořenového certifikátu: sedm nových, tři odstraněny, pět nahrazeno silnějšími podpisovými algoritmy; prozatímní oprava útoku při opětovném vyjednávání TLS
Aktualizace Java SE 6 20 15. dubna 2010 2 opravy zabezpečení
Aktualizace Java SE 6 21 2010-07-07 Žádné opravy zabezpečení; Hotspot VM 17; podpora pro Red Hat Enterprise Linux 5.4 a 5.5, Oracle Enterprise Linux 4.8, 5.4, 5.5; Podpora Google Chrome 4; podpora přizpůsobených indikátorů průběhu načítání; VisualVM 1.2.2
Aktualizace Java SE 6 22 2010-10-12 29 bezpečnostních oprav; Podpora RFC  5746
Aktualizace Java SE 6 23 08. 12. 2010 Žádné opravy zabezpečení; Hotspot VM 19; lepší podpora jazyků zprava doleva
Aktualizace Java SE 6 24 15. února 2011 21 bezpečnostních oprav; aktualizovaný Java DB
Aktualizace Java SE 6 25 21. března 2011 Žádné opravy zabezpečení; Hotspot VM 20; podpora pro Internet Explorer 9 , Firefox 4 a Chrome 10; vylepšený BigDecimal; obsahuje „stupňovitou“ kompilaci na virtuálním počítači serveru, která mu umožňuje rychlý start, stejně jako klientský virtuální počítač, a zároveň dosáhnout lepšího špičkového výkonu (tato funkce je povolena zadáním -servera -XX:+TieredCompilationmožnostmi příkazů)
Aktualizace Java SE 6 26 2011-06-07 17 nových bezpečnostních oprav; poslední verze kompatibilní s Windows Vista SP1
Aktualizace Java SE 6 27 16. 08. 2011 Žádné opravy zabezpečení; certifikace pro Firefox 5
Aktualizace Java SE 6 29 18. 10. 2011 20 bezpečnostních oprav, různé opravy chyb
Aktualizace Java SE 6 30 12. 12. 2011 Žádné opravy zabezpečení; oprava regrese SSL v aktualizaci 29; podpora pro Red Hat Enterprise Linux 6
Aktualizace Java SE 6 31 14. 2012 14 bezpečnostních oprav a jedna oprava chyb; poslední verze funguje spolehlivě pro Windows 2000
Aktualizace Java SE 6 32 26. dubna 2012 Žádné opravy zabezpečení, různé opravy chyb
Aktualizace Java SE 6 33 2012-06-12 14 oprav zabezpečení, vylepšené načítání konfiguračního souboru virtuálního počítače
Aktualizace Java SE 6 34 14. 08. 2012 Žádné opravy zabezpečení, různé opravy chyb
Aktualizace Java SE 6 35 30. 08. 2012 Obsahuje opravu hloubky zabezpečení
Aktualizace Java SE 6 37 16. 10. 2012 30 bezpečnostních oprav
Aktualizace Java SE 6 38 11. 12. 2012 Různé opravy chyb
Aktualizace Java SE 6 39 01.02.2013 50 bezpečnostních oprav
Aktualizace Java SE 6 41 19. 02. 2013 5 bezpečnostních oprav
Aktualizace Java SE 6 43 2013-03-04 2 opravy zabezpečení
Aktualizace Java SE 6 45 16. dubna 2013 42 bezpečnostních oprav; další změny; finální veřejná aktualizace.
Aktualizace Java SE 6 51 18. 06. 2013 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v Apple Update pro OS X Snow Leopard, Lion & Mountain Lion; až 40 oprav zabezpečení
Aktualizace Java SE 6 65 15. 10. 2013 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v Apple Update pro OS X Snow Leopard, Lion & Mountain Lion; nejméně 11 důležitých oprav zabezpečení
Aktualizace Java SE 6 71 14. ledna 2014 Není k dispozici pro veřejné stažení; 33 oprav
Aktualizace Java SE 6 75 15. dubna 2014 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů č. Solaris 10. #54; 25 bezpečnostních oprav
Aktualizace Java SE 6 81 15. července 2014 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 11 bezpečnostních oprav
Aktualizace Java SE 6 85 16. 10. 2014 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 18 bezpečnostních oprav
Aktualizace Java SE 6 91 2015-01-21 Verze Linux x64 a Windows i586 jsou k dispozici jako referenční implementace Java SE 6. Jiné verze jsou k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru Patchset Solaris 10; 15 bezpečnostních oprav
Aktualizace Java SE 6 95 14. dubna 2015 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 14 bezpečnostních oprav
Aktualizace Java SE 6 101 15. července 2015 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 18 oprav zabezpečení Certifikace pro IE 10 a 11 byla zavedena v 1.6.0_101
Aktualizace Java SE 6 105 2015-10-20 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 17 bezpečnostních oprav
Aktualizace Java SE 6 111 2016-01-20 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 13 bezpečnostních oprav
Aktualizace Java SE 6 113 2016-02-05 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 1 oprava zabezpečení
Aktualizace Java SE 6 115 2016-04-21 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 8 bezpečnostních oprav
Aktualizace Java SE 6 121 19. července 2016 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 15 bezpečnostních oprav
Aktualizace Java SE 6 131 18. 10. 2016 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 13 bezpečnostních oprav
Aktualizace Java SE 6 141 17. 1. 2017 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 17 bezpečnostních oprav
Aktualizace Java SE 6 151 18. dubna 2017 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 10 bezpečnostních oprav
Aktualizace Java SE 6 161 2017-07-18 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 5 bezpečnostních oprav
Aktualizace Java SE 6 171 2017-10-20 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 7 oprav zabezpečení
Aktualizace Java SE 6 181 2018-01-16 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 12 bezpečnostních oprav
Aktualizace Java SE 6 191 17. dubna 2018 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 7 oprav zabezpečení
Aktualizace Java SE 6 201 17. července 2018 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 3 opravy zabezpečení
Aktualizace Java SE 6 211 18. 10. 2018 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 8 bezpečnostních oprav

Java SE 7

Java SE 7
Krycí jméno Delfín
Vydáno 28. července 2011 ; před 10ti lety ( 2011-07-28 )
Konec veřejné podpory Duben 2015 ( 2015-04 )
Konec placené podpory Června 2022 ( 2022-06 )

Java 7 (kódové označení Dolphin ) je zásadní aktualizací, která byla spuštěna 7. července 2011 a byla pro vývojáře zpřístupněna 28. července 2011. Období vývoje bylo organizováno do třinácti milníků; 6. června 2011 byl dokončen poslední ze třinácti milníků. V průměru bylo vydáno 8 sestavení (které obecně zahrnovalo vylepšení a opravy chyb) na milník. Seznam funkcí v projektu OpenJDK 7 uvádí mnoho změn.

Mezi doplňky v Javě 7 patří:

  • Podpora JVM pro dynamické jazyky s novým invokedynamicbajtkódem pod JSR-292 v návaznosti na prototypové práce, které jsou v současné době prováděny na vícejazyčném virtuálním stroji
  • Komprimované 64bitové ukazatele (k dispozici v jazyce Java 6 s -XX:+UseCompressedOops)
  • Tyto malé jazykové změny (seskupené pod projektem s názvem Coin):
  • Řetězce ve spínači
  • Automatická správa prostředků v příkazu try
  • Vylepšené odvozování typů pro vytváření generických instancí, alias diamantový operátor <>
  • Zjednodušená deklarace metody varargs
  • Binární celočíselné literály
  • Povolení podtržítka v číselných literálech
  • Chytání více typů výjimek a opětovné vyvolání výjimek s vylepšenou kontrolou typů
  • Souběžné nástroje podle JSR 166
  • Nová knihovna I/O souborů (definovaná JSR 203) přidává podporu pro více souborových systémů, metadata souborů a symbolické odkazy. Nové balíčky jsou java.nio.file, java.nio.file.attributeajava.nio.file.spi
  • Timsort se používá k třídění sbírek a polí objektů namísto sloučení
  • Podpora na úrovni knihovny pro kryptografické algoritmy eliptické křivky
  • XRender potrubí pro Java 2D, což zlepšuje jízdní vlastnosti na specifické rysy moderních GPU
  • Nová platformová API pro grafické funkce původně implementované ve verzi 6u10 jako nepodporovaná API
  • Vylepšená podpora na úrovni knihovny pro nové síťové protokoly, včetně SCTP a Sockets Direct Protocol
  • Upstream aktualizace XML a Unicode
  • Sady pravidel nasazení Java

Lambda (implementace lambda funkcí Java), Jigsaw (implementace modulů Java ) a část Coin byly odstraněny z Java 7 a vydány jako součást Java 8 (kromě Jigsaw , která byla vydána v Javě 9).

Java 7 byla výchozí verze ke stažení na java.com od dubna 2012 do vydání Java 8.

Aktualizace Java 7

Oracle vydával veřejné aktualizace pro rodinu Java 7 čtvrtletně až do dubna 2015, kdy produkt dosáhl konce své veřejné dostupnosti. Další aktualizace pro JDK 7, které mají podle plánu pokračovat až do července 2022, jsou k dispozici pouze zákazníkům se smlouvou o podpoře.

Tabulka aktualizací Java 7
Uvolnění Datum vydání Přednosti
Java SE 7 28. července 2011 První vydání; HotSpot VM 21
Aktualizace Java SE 7 1 18. 10. 2011 20 oprav zabezpečení, další opravy chyb
Aktualizace Java SE 7 2 12. 12. 2011 Žádné opravy zabezpečení; HotSpot VM 22; vylepšení spolehlivosti a výkonu; podpora pro Solaris 11 a Firefox 5 a novější; JavaFX je součástí Java SE JDK, vylepšení pro webové aplikace
Aktualizace Java SE 7 3 14. 2012 14 bezpečnostních oprav
Aktualizace Java SE 7 4 26. dubna 2012 Žádné bezpečnostní aktualizace; HotSpot VM 23; Podpora JDK pro Mac OS X
Aktualizace Java SE 7 5 2012-06-12 14 bezpečnostních oprav
Aktualizace Java SE 7 6 14. 08. 2012 JavaFX a Java Access Bridge součástí instalace Java SE JDK a JRE, podpora JavaFX pro dotykové monitory a dotykové plošky, podpora JavaFX pro Linux , JDK a JRE podpora pro Mac OS X, JDK pro Linux na ARM
Aktualizace Java SE 7 7 30. 08. 2012 4 opravy zabezpečení
Aktualizace Java SE 7 9 16. 10. 2012 30 oprav zranitelnosti zabezpečení
Aktualizace Java SE 7 10 11. 12. 2012 Nové funkce zabezpečení, jako je například možnost zakázat spuštění jakékoli aplikace Java v prohlížeči a nová dialogová okna, která vás upozorní na nejisté prostředí JRE, a opravy chyb
Aktualizace Java SE 7 11 2013-01-13 Olson Data 2012i; oprava chyby pro problémy s registrací pluginu v systémech s nainstalovanou samostatnou verzí JavaFX, opravy zabezpečení pro CVE - 2013-0422 ; výchozí úroveň zabezpečení pro Java applety a webové spouštěcí aplikace byla zvýšena z „Medium“ na „High“
Aktualizace Java SE 7 13 01.02.2013 50 bezpečnostních oprav
Aktualizace Java SE 7 15 19. 02. 2013 5 bezpečnostních oprav
Aktualizace Java SE 7 17 2013-03-04 2 opravy zabezpečení
Aktualizace Java SE 7 21 16. dubna 2013 Několik změn včetně 42 oprav zabezpečení, nové serverové JRE, které neobsahuje modul plug-in, a JDK pro Linux v ARM
Aktualizace Java SE 7 25 18. 06. 2013 Několik změn včetně 40 oprav zabezpečení
Aktualizace Java SE 7 40 10.09.2013 621 oprav chyb, nové bezpečnostní funkce, hardfloat ARM , Java Mission Control 5.2 a podpora Retina Display
Aktualizace Java SE 7 45 15. 10. 2013 51 bezpečnostních oprav; ochrana před neoprávněnou redistribucí aplikací Java; obnovit bezpečnostní výzvy; Změny JAXP; TimeZone.set Výchozí změna
Aktualizace Java SE 7 51 14. ledna 2014 36 bezpečnostních oprav; blokovat JAVA applety bez manifestu (jako vzdálená konzole - Java Applet - karta IBM IMM, karta HP iLO), i když je varovný dialog s větou „bude zablokováno v další verzi“, 17 oprav chyb
Aktualizace Java SE 7 55 15. dubna 2014 37 oprav zabezpečení, 19 oprav chyb
Aktualizace Java SE 7 60 28. 2014 Java Mission Control 5.3, opravy chyb 130
Aktualizace Java SE 7 65 15. července 2014 18 oprav chyb
Aktualizace Java SE 7 67 2014-08-04 1 oprava chyby
Aktualizace Java SE 7 71 14. 10. 2014 16 oprav chyb
Aktualizace Java SE 7 72 14. 10. 2014 Stejné datum vydání s aktualizací 71 jako odpovídající aktualizace sady oprav (PSU) pro Java SE 7, 36 oprav chyb
Aktualizace Java SE 7 75 2015-01-20 12 oprav chyb, SSLv3 ve výchozím nastavení zakázáno
Aktualizace Java SE 7 76 2015-01-20 Stejné datum vydání s aktualizací 75 jako odpovídající aktualizace sady oprav (PSU) pro opravy chyb Java SE 7, 97
Aktualizace Java SE 7 79 14. dubna 2015 21 oprav zabezpečení, 6 oprav chyb,
Aktualizace Java SE 7 80 14. dubna 2015 Poslední veřejné vydání Javy 7; stejné datum vydání s aktualizací 79 jako odpovídající aktualizace sady oprav (PSU) pro Java SE 7, 104 oprav chyb
Aktualizace Java SE 7 85 15. července 2015 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 25 bezpečnostních oprav
Aktualizace Java SE 7 91 2015-10-20 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 20 bezpečnostních oprav
Aktualizace Java SE 7 95 19. 1. 2016 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 8 bezpečnostních oprav
Aktualizace Java SE 7 97 2016-02-05 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 1 oprava zabezpečení
Aktualizace Java SE 7 99 2016-03-23 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 1 oprava zabezpečení
Aktualizace Java SE 7 101 18. dubna 2016 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 22 bezpečnostních oprav
Aktualizace Java SE 7 111 19. července 2016 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 36 bezpečnostních oprav
Aktualizace Java SE 7 121 18. 10. 2016 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 32 oprav zabezpečení
Aktualizace Java SE 7 131 17. 1. 2017 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 34 bezpečnostních oprav
Aktualizace Java SE 7 141 18. dubna 2017 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 8 bezpečnostních oprav
Aktualizace Java SE 7 151 2017-07-18 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 4 opravy zabezpečení
Aktualizace Java SE 7 161 2017-10-20 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 4 opravy zabezpečení
Aktualizace Java SE 7 171 2018-01-16 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 51 bezpečnostních oprav
Aktualizace Java SE 7 181 17. dubna 2018 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 12 bezpečnostních oprav
Aktualizace Java SE 7 191 17. července 2018 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 9 oprav zabezpečení
Aktualizace Java SE 7 201 18. 10. 2018 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 13 bezpečnostních oprav
Aktualizace Java SE 7 211 15. 1. 2019 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 5 bezpečnostních oprav
Aktualizace Java SE 7 221 16. 04. 2019 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 5 bezpečnostních oprav
Aktualizace Java SE 7 231 16. července 2019 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 6 bezpečnostních oprav
Aktualizace Java SE 7 241 15. 10. 2019 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 15 bezpečnostních oprav
Aktualizace Java SE 7 251 14. 1. 2020 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 12 bezpečnostních oprav
Aktualizace Java SE 7 261 14. dubna 2020 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 15 bezpečnostních oprav
Aktualizace Java SE 7 271 14. července 2020 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 11 bezpečnostních oprav
Aktualizace Java SE 7 281 2020-10-20 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 8 bezpečnostních oprav
Aktualizace Java SE 7 291 2021-01-19 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 1 opravy zabezpečení
Aktualizace Java SE 7 301 2021-04-12 Není veřejně dostupné, je k dispozici pouze prostřednictvím programu podpory Java SE a v doporučeném klastru sad patchů Solaris 10; 11 bezpečnostních oprav

Java SE 8

Java SE 8
Verze LTS
Vydáno 18. března 2014 ; před 7 lety ( 2014-03-18 )
Počet JEP 8

Java 8 byla vydána 18. března 2014 a obsahovala některé funkce, které byly plánovány pro Java 7, ale později odloženy.

Práce na funkcích byla organizována ve smyslu návrhů vylepšení JDK (JEPs) .

  • JSR 335, JEP 126: Podpora na úrovni jazyka pro výrazy lambda (oficiálně, výrazy lambda; neoficiálně, uzávěry ) v rámci projektu Lambda a výchozí metody (metody virtuálního rozšíření ), které umožňují přidávání metod do rozhraní bez narušení stávajících implementací. V komunitě Java probíhala debata o tom, zda přidat podporu pro výrazy lambda. Sun později prohlásil, že výrazy lambda budou zahrnuty v Javě, a požádal o vstup komunity k upřesnění této funkce. Podpora výrazů lambda také umožňuje operace funkčního stylu na proudech prvků, jako jsou transformace inspirované MapReduce ve sbírkách. Výchozí metody umožňují autorovi rozhraní API přidávat do rozhraní nové metody, aniž by pomocí něj porušoval starý kód. Ačkoli to nebyl jejich primární záměr, výchozí metody také umožňují vícenásobnou dědičnost chování (ale ne stav).
  • JSR 223, JEP 174: Project Nashorn , běhový modul JavaScript, který vývojářům umožňuje vkládat kód JavaScript do aplikací
  • JSR 308, JEP 104: Anotace k typům Java
  • Aritmetika celých čísel bez znaménka
  • JSR 337, JEP 120: Opakující se poznámky
  • JSR 310, JEP 150: Datum a čas API
  • JEP 178: Staticky propojené knihovny JNI
  • JEP 153: Spuštění aplikací JavaFX (přímé spuštění JAR aplikací JavaFX)
  • JEP 122: Odstraňte trvalou generaci

Java 8 není podporována v systému Windows XP, ale od verze 25 JDK 8 je stále možné ji nainstalovat a spustit v systému Windows XP. Předchozí aktualizace JDK 8 mohly být spuštěny pod XP stažením archivovaného souboru ve formátu zip a rozbalením pro spustitelný soubor. Poslední verze Javy 8, kterou lze spustit na XP, je aktualizace 251. Kompatibilita jejích komponent se ale na nepodporovaném operačním systému začíná brzy přerušovat stavět během vývoje aktualizací Java 8.

Od října 2014 byla Java 8 výchozí verzí pro stahování (a poté opět stahování nahrazující Java 9) z oficiálních webových stránek. „Oracle bude i nadále poskytovat veřejné aktualizace a automatické aktualizace Java SE 8, na neurčito pro osobní uživatele“.

Aktualizace Java 8

Tabulka aktualizací Java 8
Uvolnění Datum vydání Přednosti
Java SE 8 18. 2014 První vydání
Aktualizace Java SE 8 5 15. dubna 2014 Použití atributu „ *“ v Caller-Allowable-Codebaseatributu; 11 oprav chyb
Aktualizace Java SE 8 11 15. července 2014 Java Analysis Tool (jdeps); Možnost ovládacího panelu Java deaktivovat sponzory; Atribut souboru JAR-vstupní bod; Vlastnost omezení zpracování JAXP - maxElementDepth; 18 oprav chyb zabezpečení, 15 oprav chyb
Aktualizace Java SE 8 20 19. 08. 2014 669 oprav chyb, JMC 5.4, deduplikace řetězců (ve výchozím nastavení zakázáno)
Aktualizace Java SE 8 25 14. 10. 2014 10 oprav chyb
Aktualizace Java SE 8 31 19. 1. 2015 26 oprav chyb; SSLv3 (ve výchozím nastavení zakázáno)
Aktualizace Java SE 8 40 2015-03-03 Opravy 645 chyb, přidán pojem „tlak paměti“, který pomáhá určit, kolik paměti systému je stále k dispozici (nízký tlak = vysoký obsah paměti, vysoký tlak = nedostatek paměti)
Aktualizace Java SE 8 45 14. dubna 2015 13 oprav chyb
Aktualizace Java SE 8 51 14. července 2015 Přidána podpora pro nativní sandbox na platformách Windows (ve výchozím nastavení zakázáno); také 25 oprav zabezpečení, 14 oprav chyb
Aktualizace Java SE 8 60 18. 08. 2015 Opravy chyb 480
Aktualizace Java SE 8 65 2015-10-20 25 oprav zabezpečení, 3 opravy chyb
Aktualizace Java SE 8 66 16. 11. 2015 15 oprav chyb
Aktualizace Java SE 8 71 19. 1. 2016 8 oprav zabezpečení, 5 oprav chyb
Aktualizace Java SE 8 72 19. 1. 2016 8 oprav zabezpečení, 5 oprav chyb, několik vylepšení
Aktualizace Java SE 8 73 2016-02-03 1 oprava zabezpečení
Aktualizace Java SE 8 74 2016-02-03 1 oprava zabezpečení
Aktualizace Java SE 8 77 2016-03-23 1 oprava zabezpečení
Aktualizace Java SE 8 91 19. 04. 2016 9 oprav zabezpečení, 4 opravy chyb a vylepšení
Aktualizace Java SE 8 92 19. 04. 2016 Opravy zabezpečení a chyb od 8u91 plus 76 dalších oprav chyb; ExitOnOutOfMemoryErrora CrashOnOutOfMemoryErrorvlajky byly zavedeny
Aktualizace Java SE 8 101 19. července 2016 Opravy zabezpečení a chyb od 8u92 plus 9 dalších oprav chyb
Aktualizace Java SE 8 102 19. července 2016 Opravy zabezpečení a chyb od 8u101 plus 118 dalších oprav chyb
Aktualizace Java SE 8 111 18. 10. 2016 7 oprav zabezpečení a 9 oprav chyb
Aktualizace Java SE 8 112 18. 10. 2016 Další funkce a 139 oprav chyb nad 8u111
Aktualizace Java SE 8 121 17. 1. 2017 3 další funkce, 5 změn a 11 oprav chyb nad 8u112.
Aktualizace Java SE 8 131 18. dubna 2017 4 změny a 42 oprav chyb (2 pozoruhodné).
Aktualizace Java SE 8 141 2017-07-18 Další funkce, 3 změny a 12 oprav chyb.
Aktualizace Java SE 8 144 2017-07-26 32 Opravy zabezpečení a opravy chyb z 8u141.
Aktualizace Java SE 8 151 17. 10. 2017 22 oprav zabezpečení, 2 poznámky, 1 zrušení certifikátu, 1 nová funkce, 6 změn a 24 oprav chyb od 8u144.
Aktualizace Java SE 8 152 17. 10. 2017 Opravy zabezpečení, 1 nová funkce, 1 změna a 238 oprav chyb z 8u151 (1 pozoruhodná).
Aktualizace Java SE 8 161 2018-01-16 21 oprav zabezpečení, 3 nové funkce, 9 změn a 1 oprava chyb od 8u152.
Aktualizace Java SE 8 162 2018-01-16 Opravy zabezpečení, 63 oprav chyb.
Aktualizace Java SE 8 171 17. dubna 2018 Opravy zabezpečení, opravy chyb.
Aktualizace Java SE 8 172 17. dubna 2018 Opravy zabezpečení, opravy chyb.
Aktualizace Java SE 8 181 17. července 2018 Opravy zabezpečení, opravy chyb.
Aktualizace Java SE 8 191 16. 10. 2018 Nové funkce, změny, opravy chyb, opravy zabezpečení.
Aktualizace Java SE 8 192 16. 10. 2018 Nové funkce, změny, opravy chyb.
Aktualizace Java SE 8 201 15. 1. 2019 Nové funkce, změny, opravy chyb.
Aktualizace Java SE 8 202 15. 1. 2019 Nové funkce, změny, opravy chyb.
Aktualizace Java SE 8 211 16. 04. 2019 Nové funkce, změny, opravy chyb. Aktualizace licence .
Aktualizace Java SE 8 212 16. 04. 2019 Nové funkce (např. 5 měnových symbolů, včetně bitcoinů a „New Japan Era Name Reiwa “), změny, opravy chyb. Aktualizace licence .
Aktualizace Java SE 8 221 16. července 2019 Nové funkce, změny, opravy chyb.
Aktualizace Java SE 8 231 15. 10. 2019 Nové funkce, změny, opravy chyb a 18 oprav zabezpečení.
Aktualizace Java SE 8 241 14. 1. 2020 Nové funkce, změny, opravy chyb.
Aktualizace Java SE 8 251 14. dubna 2020 Nové funkce, změny, opravy chyb. Poslední verze, která se ukázala být neoficiálně funkční na Windows XP.
Aktualizace Java SE 8 261 14. července 2020 Nové funkce, změny, opravy chyb.
Aktualizace Java SE 8 271 2020-10-20 Nové funkce, změny, opravy chyb.
Aktualizace Java SE 8 281 2021-01-19 Nové funkce, změny, opravy chyb.
Aktualizace Java SE 8 291 2021-04-20 Nové funkce, změny, opravy chyb.
Aktualizace Java SE 8 301 2021-07-20 Nové funkce, změny, opravy chyb.

Java SE 9

Java SE 9
Vydáno 21. září 2017 ; Před 4 lety ( 2017-09-21 )
Počet JEP 9

Java SE 9 byla zpřístupněna 21. září 2017 kvůli kontroverznímu přijetí aktuální implementace Project Jigsaw výkonným výborem Java, což vedlo společnost Oracle k vyřešení některých otevřených problémů a problémů ak upřesnění některých kritických technických otázek. V posledních dnech června 2017 vyjádřil Java Community Process téměř jednomyslný konsenzus ohledně navrhovaného schématu modulového systému.

První kandidát na vydání Java 9 byl vydán 9. srpna 2017. První stabilní vydání Java 9 bylo 21. září 2017.

Dějiny

Na JavaOne 2011 společnost Oracle diskutovala o funkcích, které doufala vydat pro Java 9 v roce 2016. Java 9 by měla zahrnovat lepší podporu pro hromady více gigabajtů, lepší integraci nativního kódu, jiný výchozí smeták ( G1 , pro „kratší doby odezvy“) a self-tuning JVM. Na začátku roku 2016 bylo vydání Javy 9 odloženo na březen 2017 a později opět odloženo o další čtyři měsíce na červenec 2017.

Aktualizace Java 9

Uvolnění Datum vydání Přednosti
Java SE 9 2017-09-21 První vydání
Java SE 9.0.1 17. 10. 2017 Opravy zabezpečení z října 2017 a opravy kritických chyb
Java SE 9.0.4 2018-01-16 Konečné vydání pro JDK 9; Opravy zabezpečení z ledna 2018 a opravy kritických chyb

Java SE 10

Java SE 10
Vydáno 20. března 2018 ; před 3 lety ( 2018-03-20 )
Počet JEP 12

OpenJDK 10 byl vydán 20. března 2018, přičemž bylo potvrzeno dvanáct nových funkcí. Mezi tyto funkce patřily:

První z těchto odvození typu místní proměnné JEP 286 umožňuje použít varklíčové slovo pro místní proměnné se skutečným typem vypočítaným kompilátorem. Můžeme tedy:

var list = new ArrayList<String>(); // infers ArrayList<String>
var stream = list.stream();         // infers Stream<String>

Aktualizace Java 10

Uvolnění Datum vydání Přednosti
Java SE 10 2018-03-20 První vydání
Java SE 10.0.1 17. dubna 2018 Opravy zabezpečení, 5 oprav chyb
Java SE 10.0.2 17. července 2018 Konečné vydání pro JDK 10. Opravy zabezpečení, 7 oprav chyb

Java SE 11

Java SE 11
Verze LTS
Vydáno 25. září 2018 ; před 3 lety ( 2018-09-25 )
Počet JEP 17

JDK 11 byla vydána 25. září 2018 a verze je aktuálně otevřena pro opravy chyb. Nabízí LTS nebo dlouhodobou podporu. Java 11 mimo jiné obsahuje řadu nových funkcí, například:

Byla vynechána řada funkcí z předchozích verzí; zejména aplety Java a Java Web Start již nejsou k dispozici. Moduly JavaFX , Java EE a CORBA byly z JDK odstraněny.

Aktualizace Java 11

Tabulka aktualizací Java 11
Uvolnění Datum vydání Přednosti
Java SE 11 2018-09-25 První vydání
Java SE 11.0.1 16. 10. 2018 Opravy zabezpečení a chyb
Java SE 11.0.2 15. 1. 2019 Opravy zabezpečení a chyb
Java SE 11.0.3 16. 04. 2019 Nové funkce, zabezpečení a opravy chyb
Java SE 11.0.4 16. července 2019 Nové funkce, zabezpečení a opravy chyb;

HotSpot Detekce operačního systému Windows správně identifikuje Windows Server 2019

Java SE 11.0.5 15. 10. 2019 Nové funkce, zabezpečení a opravy chyb
Java SE 11.0.6 14. 1. 2020 Nové funkce, zabezpečení a opravy chyb
Java SE 11.0.7 14. dubna 2020 Nové funkce, zabezpečení a opravy chyb
Java SE 11.0.8 14. července 2020 Nové funkce, zabezpečení a opravy chyb
Java SE 11.0.9 2020-10-20 Nové funkce, zabezpečení a opravy chyb
Java SE 11.0.10 2021-01-19 Nové funkce, zabezpečení a opravy chyb
Java SE 11.0.11 2021-04-20 Nové funkce, zabezpečení a opravy chyb
Java SE 11.0.12 2021-07-20 Nové funkce, zabezpečení a opravy chyb

Java SE 12

Java SE 12
Vydáno 19. března 2019 ; Před 2 roky ( 2019-03-19 )
Počet JEP 8
Funkce náhledu Vylepšené příkazy přepínače

JDK 12 byl vydán 19. března 2019. Java 12 obsahuje mimo jiné řadu nových funkcí, například:

Funkce náhledu Jep 325 rozšiřuje switchpříkaz, takže jej lze také použít jako výraz, a přidává novou formu označení případu, kde je výraz na pravé straně. Není potřeba žádné prohlášení o přestávce. Pro složité výrazy yieldlze použít příkaz. To se v Javě SE 14 stává standardem.

int ndays = switch(month) {
    case JAN, MAR, MAY, JUL, AUG, OCT, DEC -> 31;
    case APR, JUN, SEP, NOV -> 30;
    case FEB -> {
        if (year % 400 == 0) yield 29;
        else if (year % 100 == 0) yield 28;
        else if (year % 4 == 0) yield 29;
        else yield 28; }
};

Aktualizace Java 12

Uvolnění Datum vydání Přednosti
Java SE 12 19. 3. 2019 První vydání
Java SE 12.0.1 16. 04. 2019 Opravy názvů a zabezpečení nové japonské éry
Java SE 12.0.2 16. července 2019 Odebrány některé certifikáty kořenové certifikační autority

Java SE 13

Java SE 13
Vydáno 17. září 2019 ; Před 2 roky ( 2019-09-17 )
Počet JEP 5
Funkce náhledu Vylepšené příkazy přepínače , textové bloky

JDK 13 byl vydán 17. září 2019. Java 13 obsahuje následující nové funkce a také „stovky menších vylepšení a tisíce oprav chyb“.

Textové bloky JEP 355 umožňují víceřádkové řetězcové literály:

String html = """
              <HTML lang="en">
                  <body>
                      <p>Hello, world</p>
                  </body>
              </html>
              """;

Aktualizace Java 13

Uvolnění Datum vydání Přednosti
Java SE 13 17. 09. 2019 Vydání obecné dostupnosti
Java SE 13.0.1 15. 10. 2019 Opravy zabezpečení a chyb
Java SE 13.0.2 14. 1. 2020 Opravy zabezpečení a chyb

Java SE 14

Java SE 14
Vydáno 17. března 2020 ; Před 18 měsíci ( 2020-03-17 )
Počet JEP 16
Pozoruhodné vlastnosti Užitečné NullPointerExceptions , vylepšené příkazy přepínače
Pozoruhodné odstranění Odeberte souběžný odpadkový koš Mark Sweep
Funkce náhledu Vyhledávání vzorů pro instanceof , záznamy , textových bloků
Inkubační funkce jpackager, přístup do cizí paměti

JDK 14 byl vydán 17. března 2020. Java 14 obsahuje následující nové funkce a také „stovky menších vylepšení a tisíce oprav chyb“.

JEP 305, například Pattern Matching, zjednodušuje běžný případ instanceoftestu, po kterém bezprostředně následuje obsazení a nahrazení

if (obj instanceof String) {
    String s = (String) obj;
    System.out.println( s.length() );
}

s

if (obj instanceof String s) {
    System.out.println( s.length() );
}

Záznamy JEP 359 umožňují snadné vytváření jednoduchých neměnných tříd typu Tuple .

record Point(int x, int y) { }
Point p = new Point(3,4);
System.out.println( p.x() );

Aktualizace Java 14

Uvolnění Datum vydání Přednosti
Java SE 14 17.03.2020 Vydání obecné dostupnosti
Java SE 14.0.1 14. dubna 2020 Opravy zabezpečení a chyb
Java SE 14.0.2 14. července 2020 Opravy zabezpečení a chyb

Java SE 15

Java SE 15
Vydáno 15. září 2020 ; Před 13 měsíci ( 2020-09-15 )
Počet JEP 14
Pozoruhodné vlastnosti Skryté třídy, ZGC ( popelář ), Shenandoah (popelář), textové bloky
Pozoruhodné odstranění JavaScript engine, porty Solaris a SPARC
Funkce náhledu Uzavřené třídy , vzorů z instanceof , záznamy
Inkubační funkce Přístup do cizí paměti

JDK 15 byl vydán 15. září 2020. Java 15 přidává např. Podporu víceřádkových řetězcových literálů (aka Text Blocks). Popeláři Shenandoah a Z (posledně jmenovaní někdy zkráceně ZGC) jsou nyní připraveni k použití ve výrobě (tj. Již nejsou označeni jako experimentální). Podpora operačního systému Oracle Solaris (a procesorů SPARC) společnosti Oracle byla ukončena (i když je stále k dispozici např. V jazyce Java 11). Nashorn JavaScript Engine je odstraněn. Také odstranit některé kořenové certifikáty CA .

Uzavřené třídy JEP 360 přidávají zapečetěné třídy a rozhraní, která omezují, které další třídy nebo rozhraní je mohou rozšířit nebo implementovat. permitsTřídu nebo rozhraní mohou rozšířit pouze ty třídy uvedené v klauzuli.

package com.example.geometry;

public abstract sealed class Shape
    permits Circle, Rectangle, Square {...}

Spolu se záznamy jsou uzavřené třídy algebraickými datovými typy , záznamy jsou produktovými typy a zapečetěné třídy jsou součtovými typy . Fungují dobře s dalšími novějšími funkcemi, jako jsou záznamy, výrazy přepínačů a párování vzorů pro instance-of. Všechny tvoří součást systému pro „párování vzorů v Javě“, který poprvé probrali Gavin Bierman a Brian Goetz v září 2018.

Aktualizace Java 15

Uvolnění Datum vydání Přednosti
Java SE 15 15. 9. 2020 Vydání obecné dostupnosti
Java SE 15.0.1 2020-10-20 Opravy zabezpečení a chyb
Java SE 15.0.2 2021-01-19 Opravy zabezpečení a chyb

Java SE 16

Java SE 16
Vydáno 16. března 2021 ; před 6 měsíci ( 2021-03-16 )
Počet JEP 17
Pozoruhodné vlastnosti Windows / AArch64 Port, jpackager, vzorů pro instanceof , záznamy
Funkce náhledu Utěsněné třídy
Inkubační funkce Cizí linker , přístup do cizí paměti

JDK 16 byl vydán 16. března 2021. Java 16 odstraňuje možnosti kompilace Ahead-of-Time (a Graal JIT ). Samotná implementace Javy byla a stále je napsána v C ++ , zatímco od Javy 16 je povolen novější C ++ 14 (ale stále ne např. C ++ 17 nebo C ++ 20 ). Kód byl také přesunut na GitHub (zrušení systému řízení zdroje Mercurial ).

Aktualizace Java 16

Uvolnění Datum vydání Přednosti
Java SE 16 2021-03-16 Vydání obecné dostupnosti
Java SE 16.0.1 2021-04-20 Aktualizace databáze časového pásma, opravy chyb a aktualizace zabezpečení
Java SE 16.0.2 2021-07-20 Opravy zabezpečení a chyb

Java SE 17

Java SE 17
Verze LTS
Vydáno 14. září 2021 ; Před 31 dny ( 2021-09-14 )
Počet JEP 14
Pozoruhodné vlastnosti Port macOS /AArch64, uzavřené třídy
Pozoruhodné odstranění Kompilátor AOT , aktivace RMI
Funkce náhledu Přepnout shodu vzoru
Inkubační funkce Vector API, cizí funkce a paměť API


JDK 17 je aktuální vydání dlouhodobé podpory (LTS) od září 2021. Java 17 je 2. vydání dlouhodobé podpory (LTS) od přechodu na novou kadenci 6měsíčního vydání (první z nich je Java 11).

Aktualizace Java 17

Uvolnění Datum vydání Přednosti
Java SE 17 2021-09-14 Vydání obecné dostupnosti: Dlouhodobá podpora

Java SE 18

Java SE 18
Vydáno Března 2022 ( 2022-03 )
Počet JEP TBC
Pozoruhodné vlastnosti TBC
Pozoruhodné odstranění TBC
Funkce náhledu TBC
Inkubační funkce TBC


JDK 18 je nyní v aktivním vývoji, má vyjít v březnu 2022, pokud budou pokračovat současné 6měsíční cykly vydání.

Aktualizace Java 18

Uvolnění Datum vydání Přednosti
Nejnovější sestavení 2022-03-xx TBC Předběžný přístup: Build 17 (2021-09-30)

Funkce budoucnosti

  • Projekt Valhalla : Typy hodnot , objekty bez identity, ale s efektivním rozložením paměti.
  • Project Panama : Vylepšená interoperabilita s nativním kódem , umožňující zdrojovému kódu Java volat funkce a používat datové typy z jiných jazyků, a to způsobem, který je snazší a má lepší výkon než dnes.
  • Project Loom : Virtuální vlákna , lehká alternativa naplánovaná v uživatelském režimu ke standardním vláknům spravovaným OS. Virtuální vlákna jsou namapována na vlákna OS ve vztahu mnoho k mnoha, na rozdíl od vztahu mnoho k jednomu z původní implementace zelených vláken v dřívějších verzích Javy.

Implementace

Oficiálně podporovanou platformou Java , nejprve vyvinutou ve společnosti Sun a nyní spravovanou společností Oracle, je Java SE . Vydání založené na projektu OpenJDK , bezplatném a open-source projektu s otevřeným vývojovým modelem . Existují však i jiné implementace Java - částečně kvůli rané historii Javy jako proprietárního softwaru . Naproti tomu některé implementace byly vytvořeny tak, aby nabízely určité výhody oproti standardní implementaci, často jako výsledek určité oblasti akademického nebo korporátního sponzorovaného výzkumu. Mnoho distribucí Linuxu zahrnuje sestavení OpenJDK prostřednictvím projektu IcedTea zahájeného společností Red Hat , který poskytuje přímočařejší prostředí pro vytváření a integraci .

Visual J ++ a Microsoft Java Virtual Machine byly vytvořeny jako nekompatibilní implementace. Po žalobě Sun v. Microsoft od ní Microsoft upustil a začal pracovat na platformě .NET . V roce 2021 začala společnost Microsoft distribuovat kompatibilní „Microsoft Build of OpenJDK“ pro Javu 11 a poté také pro Javu 17. Jejich sestavy podporují Windows, ale také Linux a macOS .

K dispozici jsou další proprietární implementace Java, například Azul 's Zing; Azul navíc nabízí certifikované open source OpenJDK buildy pod přezdívkou Zulu.

Před vydáním OpenJDK, zatímco implementace Sunu byla stále proprietární, byl vytvořen projekt GNU Classpath, který poskytuje bezplatnou a open-source implementaci platformy Java. Od vydání JDK 7, kdy se OpenJDK stala oficiální referenční implementací, původní motivace projektu GNU Classpath téměř úplně zmizela a jeho poslední vydání bylo v roce 2012.

Projekt Apache Harmony byl zahájen krátce před vydáním OpenJDK. Po prvotním vydání zdrojového kódu Sunu pokračoval projekt Harmony, který pracoval na zajištění implementace pod laxní licencí , na rozdíl od ochranné licence zvolené pro OpenJDK. Google později vyvinul Android a vydal jej pod laxní licencí. Android začlenil části projektu Harmony, doplněné o vlastní virtuální stroj Dalvik společnosti Google a ART . Apache Harmony byl od té doby v důchodu a Google změnil své komponenty Harmony na ekvivalentní od OpenJDK.

Jak Jikes, tak Jikes RVM jsou výzkumné projekty s otevřeným zdrojovým kódem, které vyvinula společnost IBM.

Existuje několik dalších implementací, které začaly jako proprietární software, ale nyní jsou open source. IBM původně vyvinula OpenJ9 jako proprietární J9, ale od té doby projekt relicencovala a darovala ho Eclipse Foundation . JRockit je proprietární implementace, kterou získala společnost Oracle a začlenila ji do následujících verzí OpenJDK.

Reference

externí odkazy