{"id":143670,"date":"2025-09-17T11:12:01","date_gmt":"2025-09-17T09:12:01","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-java-se-25-lts-i-openjdk-25"},"modified":"2025-09-17T11:12:01","modified_gmt":"2025-09-17T09:12:01","slug":"vypusk-java-se-25-lts-i-openjdk-25","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sk\/blog\/news\/vypusk-java-se-25-lts-i-openjdk-25","title":{"rendered":"Vydanie Java SE 25 LTS a OpenJDK 25","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Po \u0161iestich mesiacoch v\u00fdvoja spolo\u010dnos\u0165 Oracle uverejnila platformu Java SE 25 (Java Platform, Standard Edition 24), ktorej referen\u010dn\u00e1 implement\u00e1cia je postaven\u00e1 na otvorenom projekte OpenJDK. Okrem odstr\u00e1nenia niektor\u00fdch zastaran\u00fdch funkci\u00ed v Java SE 25 bola zachovan\u00e1 sp\u00e4tn\u00e1 kompatibilita s predch\u00e1dzaj\u00facimi verziami platformy Java \u2014 v\u00e4\u010d\u0161ina predt\u00fdm naprogramovan\u00fdch Java projektov bude bez zmien fungova\u0165 na novej verzii. Hotov\u00e9 zostavy Java SE 25 (JDK, JRE a Server JRE) s\u00fa pripraven\u00e9 pre Linux (x86_64, AArch64), Windows (x86_64) a macOS (x86_64, AArch64). Referen\u010dn\u00e1 implement\u00e1cia Java SE 25 vyvinut\u00e1 v r\u00e1mci projektu OpenJDK je \u00faplne otvoren\u00e1 pod licenciou GPLv2 s v\u00fdnimkami GNU ClassPath, ktor\u00e9 umo\u017e\u0148uj\u00fa dynamick\u00e9 prepojenie s komer\u010dn\u00fdmi produktmi.     <\/p>\n<p>Java SE 25 patr\u00ed medzi verzie s pred\u013a\u017eenou podporou, aktualiz\u00e1cie pre \u0148u bud\u00fa vyd\u00e1van\u00e9 do roku 2033 (verejn\u00e9 aktualiz\u00e1cie bud\u00fa vych\u00e1dza\u0165 do septembra 2030). Ako vetvy s dlhodobou podporou (LTS) na\u010falej pokra\u010duj\u00fa vetvy Java SE 17 a 21, pre ktor\u00e9 bud\u00fa aktualiz\u00e1cie vyd\u00e1van\u00e9 do rokov 2029 a 2031, resp. (verejn\u00e9 \u2014 do rokov 2026 a 2028). Pred\u013a\u017een\u00e1 podpora LTS vetiev Java SE 8 a 11 potrv\u00e1 do rokov 2030 a 2032.     <\/p>\n<p>Medzi novinkami navrhnut\u00fdmi v Java SE 25 (1, 2, 3, 4):   <\/p>\n<ul>\n<li class=\"l\"> Pridan\u00e9 experiment\u00e1lne API StableValue na pr\u00e1cu s objektmi obsahuj\u00facimi nezmenite\u013en\u00e9 d\u00e1ta, ktor\u00e9 s\u00fa spracov\u00e1van\u00e9 v JVM ako kon\u0161tanty. Na tak\u00e9to objekty sa uplat\u0148uj\u00fa optimaliz\u00e1cie v\u00fdkonu, podobn\u00e9 poliam s k\u013e\u00fa\u010dov\u00fdm slovom \u201efinal\u201c. API StableValue odde\u013euje vytv\u00e1ranie trval\u00fdch hodn\u00f4t a ich inicializ\u00e1ciu, zaru\u010duje, \u017ee hodnota m\u00f4\u017ee by\u0165 inicializovan\u00e1 iba raz, skracuje \u010das spustenia programov a umo\u017e\u0148uje aplikova\u0165 v pou\u017e\u00edvate\u013eskom k\u00f3de optimaliz\u00e1cie \u201es\u0165ahovania kon\u0161t\u00e1nt\u201c (constant-folding), ktor\u00e9 sa predt\u00fdm pou\u017e\u00edvali iba vo vn\u00fatornom k\u00f3de JDK. class Application { \/\/ Bolo: \/\/ static final UserService USERS = new UserService(); \/\/ Stalo sa: static final StableValue USERS = StableValue.of(); public static UserService users() { return USERS.orElseSet(UserService::new); } }\n<li class=\"l\"> Bol pridan\u00fd experiment\u00e1lny API na k\u00f3dovanie a dek\u00f3dovanie objektov s kryptografick\u00fdmi k\u013e\u00fa\u010dmi, certifik\u00e1tmi a zoznamami odvolan\u00fdch certifik\u00e1tov s pou\u017eit\u00edm form\u00e1tu PEM (Pivacy-Enhanced Mail).\n<li class=\"l\"> Pridan\u00e1 podpora obmedzen\u00fdch hodn\u00f4t (Scoped Values), ktor\u00e9 umo\u017e\u0148uj\u00fa zdie\u013ea\u0165 nemenn\u00e9 d\u00e1ta v vl\u00e1knach a efekt\u00edvne vymie\u0148a\u0165 si d\u00e1ta medzi podraden\u00fdmi vl\u00e1knami (hodnoty sa dedi\u010dia). Scoped Values s\u00fa vyvinut\u00e9 na nahradenie mechanizmu premenn\u00fdch lok\u00e1lnych k vl\u00e1knu (thread-local variables) a s\u00fa efekt\u00edvnej\u0161ie pri pou\u017eit\u00ed ve\u013emi ve\u013ek\u00e9ho mno\u017estva virtu\u00e1lnych vl\u00e1kien (tis\u00edce a mili\u00f3ny vl\u00e1kien). Hlavn\u00fd rozdiel medzi Scoped Values a premenn\u00fdmi lok\u00e1lnymi k vl\u00e1knu je v tom, \u017ee prv\u00e9 sa zapisuj\u00fa iba raz, n\u00e1sledne ich nie je mo\u017en\u00e9 zmeni\u0165 a zost\u00e1vaj\u00fa dostupn\u00e9 len po\u010das vykon\u00e1vania vl\u00e1kna.\n<li class=\"l\"> Pridan\u00e9 API na pou\u017e\u00edvanie kryptografick\u00fdch funkci\u00ed deriv\u00e1cie k\u013e\u00fa\u010da (KDF, key derivation function), ktor\u00e9 umo\u017e\u0148uj\u00fa generova\u0165 dodato\u010dn\u00e9 k\u013e\u00fa\u010de po\u017eadovanej d\u013a\u017eky na z\u00e1klade tajn\u00e9ho k\u013e\u00fa\u010da (napr\u00edklad hesla) a \u013eubovo\u013en\u00e9ho s\u00faboru d\u00e1t.\n<li class=\"l\"> Odstr\u00e1nen\u00fd k\u00f3d a skripty zostavenia pre podporu 32-bitov\u00fdch syst\u00e9mov x86. Ukon\u010denie podpory 32-bitov\u00fdch syst\u00e9mov x86 umo\u017enilo zjednodu\u0161i\u0165 infra\u0161trukt\u00faru pre zostavovanie a testovanie JDK, ako aj realizova\u0165 mo\u017enosti viazan\u00e9 na platformy bez vytv\u00e1rania fallback-handlerov pre 32-bitov\u00e9 syst\u00e9my x86.\n<li class=\"l\"> Bola pridan\u00e1 mo\u017enos\u0165 pou\u017eitia v\u00fdrazu &#171;import module M&#187; na import v\u0161etk\u00fdch bal\u00edkov, ktor\u00e9 exportuje uveden\u00fd modul. T\u00e1to zmena v\u00fdrazne u\u013eah\u010duje op\u00e4tovn\u00e9 vyu\u017eitie modulov\u00fdch kni\u017en\u00edc t\u00fdm, \u017ee umo\u017e\u0148uje pripoji\u0165 kni\u017enice a triedy bez ur\u010denia ich umiestnenia v hierarchii bal\u00edkov. Napr\u00edklad, uvedenie &#171;import module java.base&#187; sp\u00f4sob\u00ed import v\u0161etk\u00fdch 54 bal\u00edkov, ktor\u00e9 patria do modulu java.base, ktor\u00e9 by predt\u00fdm museli by\u0165 spomenut\u00e9 samostatne (&#171;import java.io.*&#187;, &#171;import java.util.*&#187; at\u010f.).\n<li class=\"l\"> Bol navrhnut\u00fd kompaktn\u00fd variant form\u00e1tovania programov, ktor\u00fd m\u00f4\u017ee by\u0165 u\u017eito\u010dn\u00fd pre vzdel\u00e1vanie a pri v\u00fdvoji mal\u00fdch aplik\u00e1ci\u00ed. V kompaktnej forme nie je potrebn\u00e9 definova\u0165 zbyto\u010dn\u00e9 triedy, typov\u00e9 API s\u00fa automaticky importovan\u00e9 a zjednodu\u0161en\u00e9 met\u00f3dy vstupu\/v\u00fdstupu s\u00fa dostupn\u00e9. Napr\u00edklad, aplik\u00e1ciu &#171;Hello, World!&#187; m\u00f4\u017eeme zredukova\u0165 na:       void main() {         IO.println(&#171;Hello, World!&#187;);     }\n<li class=\"l\"> Bolo povolen\u00e9 uv\u00e1dza\u0165 v\u00fdrazy v kon\u0161truktoroch pred volan\u00edm super(&#8230;), ktor\u00e9 sa pou\u017e\u00edva na explicitn\u00e9 volanie kon\u0161truktora rodi\u010dovskej triedy z kon\u0161truktora dedenej triedy, ak tieto v\u00fdrazy neodkazuj\u00fa na vytv\u00e1ran\u00fd in\u0161tanciu kon\u0161truktora.       class Outer {         void hello() {             System.out.println(&#171;Hello&#187;);         }         class Inner {             Inner() {                 hello();                 super();             }         }     }\n<li class=\"l\"> Pridan\u00fd generat\u00edvny re\u017eim pr\u00e1ce garbage collectora Shenandoah, v ktorom s\u00fa oddelene spracovan\u00e9 star\u00e9 a ned\u00e1vno vytvoren\u00e9 objekty pre zv\u00fd\u0161enie efektivity \u010distenia objektov s kr\u00e1tkou \u017eivotnos\u0165ou. Nov\u00fd re\u017eim zabezpe\u010duje predv\u00eddate\u013enej\u0161iu propustnos\u0165, odolnos\u0165 vo\u010di zmen\u00e1m z\u00e1\u0165a\u017ee a zn\u00ed\u017een\u00fa spotrebu pam\u00e4te pri garbage collection. Pl\u00e1nova\u010d Shenandoah sa s\u00fastre\u010fuje na skr\u00e1tenie \u010dasu zastavenia po\u010das garbage collection t\u00fdm, \u017ee vykon\u00e1va v\u00e4\u010d\u0161ie mno\u017estvo pr\u00e1ce paralelne s vykon\u00e1van\u00edm Java aplik\u00e1ci\u00ed.\n<li class=\"l\"> Bola zjednodu\u0161en\u00e1 tvorba cache pre predbe\u017en\u00e9 (Ahead-of-Time) na\u010d\u00edtanie a kompoz\u00edciu tried, \u010d\u00edm sa ur\u00fdchli spustenie HotSpot JVM v\u010faka zapojeniu tried v u\u017e na\u010d\u00edtanom a skomponovanom stave.   Pri spusten\u00ed u\u017e nie s\u00fa potrebn\u00e9 samostatn\u00e9 oper\u00e1cie na zaznamen\u00e1vanie aktivity a vytv\u00e1ranie cache, a sta\u010d\u00ed jeden pr\u00edkaz:       java -XX:AOTCacheOutput=app.aot -cp app.jar com.example.App &#8230;\n<li class=\"l\"> Pri \u0161tarte HotSpot Java VM je implementovan\u00e1 mo\u017enos\u0165 pou\u017e\u00edva\u0165 profily vykon\u00e1vania met\u00f3d z\u00edskan\u00e9 pri predch\u00e1dzaj\u00facom spusten\u00ed aplik\u00e1cie. Zmena umo\u017e\u0148uje JIT-kompil\u00e1toru ob\u00eds\u0165 sa bez zhroma\u017e\u010fovania \u0161tatistiky a okam\u017eite za\u010da\u0165 generova\u0165 nat\u00edvny k\u00f3d bez \u010dakania na vytvorenie profilu.\n<li class=\"l\"> V HotSpot JVM je implementovan\u00e1 podpora kompaktn\u00fdch hlavi\u010diek objektov, ktor\u00fdch ve\u013ekos\u0165 na 64-bitov\u00fdch syst\u00e9moch bola zn\u00ed\u017een\u00e1 z 96 na 64 bitov (z 12 na 8 bajtov). Zn\u00ed\u017eenie ve\u013ekosti hlavi\u010diek umo\u017e\u0148uje zmen\u0161i\u0165 ve\u013ekos\u0165 haldy a zv\u00fd\u0161i\u0165 efektivitu pr\u00e1ce cache.\n<li class=\"l\"> Navrhnut\u00e1 testovacia implement\u00e1cia API Vector poskytuje funkcie pre vektorov\u00e9 v\u00fdpo\u010dty, ktor\u00e9 sa vykon\u00e1vaj\u00fa s vyu\u017eit\u00edm vektorov\u00fdch in\u0161trukci\u00ed procesorov x86_64 a AArch64 a umo\u017e\u0148uj\u00fa s\u00fa\u010dasne aplikova\u0165 oper\u00e1cie na viacer\u00e9 hodnoty (SIMD). Na rozdiel od funkci\u00ed automatizovanej vektoriz\u00e1cie skalarov\u00fdch oper\u00e1ci\u00ed poskytnut\u00fdch JIT kompil\u00e1torom HotSpot d\u00e1va nov\u00e9 API mo\u017enos\u0165 v\u00fdslovne riadi\u0165 vektoriz\u00e1ciu pre paraleln\u00e9 spracovanie \u00fadajov.\n<li class=\"l\"> Pre testovanie bol navrhnut\u00fd piaty predbe\u017en\u00fd variant API pre \u0161trukt\u00farovan\u00fa paralelnost (Structured Concurrency), ktor\u00fd zjednodu\u0161uje v\u00fdvoj viacvl\u00e1knov\u00fdch aplik\u00e1ci\u00ed prostredn\u00edctvom spracovania nieko\u013ek\u00fdch \u00faloh vykon\u00e1van\u00fdch v r\u00f4znych vl\u00e1knach ako jedn\u00e9ho bloku.\n<li class=\"l\"> V mechanizme zhodnocovania s obrazom bol navrhnut\u00fd tret\u00ed predbe\u017en\u00fd variant mo\u017enosti pou\u017e\u00edvania primit\u00edvnych typov (int, byte, char a in\u00e9 z\u00e1kladn\u00e9 typy, ktor\u00e9 nie s\u00fa objektmi) vo v\u0161etk\u00fdch druhoch \u0161abl\u00f3n, v oper\u00e1tore &#171;instanceof&#187; a v blokoch &#171;switch&#187;.         switch (x.getStatus()) {         case 0 -&gt; &#171;okay&#187;;         case 1 -&gt; &#171;warning&#187;;         case 2 -&gt; &#171;error&#187;;         case int i -&gt; &#171;unknown status: &#187; + i;     }     if (i instanceof byte b) {      &#8230; b &#8230;     }\n<li class=\"l\"> Do JDK Flight Recorder (JFR) bola pridan\u00e1 experiment\u00e1lna podpora profilovania s presnej\u0161\u00edm sledovan\u00edm vyu\u017eitia CPU na platforme Linux. Inform\u00e1cie o \u010dase vykon\u00e1vania r\u00f4znych kon\u0161trukci\u00ed m\u00f4\u017eu by\u0165 preh\u013eadne vizualizovan\u00e9 pomocou farebn\u00fdch grafov \u201eFlameGraph\u201c.\n<li class=\"l\"> Stabilita JDK Flight Recorder (JFR) pri asynchr\u00f3nnom vzorkovan\u00ed z\u00e1sobn\u00edkov Java vl\u00e1kien bola zlep\u0161en\u00e1 obch\u00e1dzan\u00edm z\u00e1sobn\u00edka volan\u00ed len \u201ebezpe\u010dn\u00fdmi bodmi\u201c (safepoints).\n<li class=\"l\"> Do JDK Flight Recorder (JFR) boli pridan\u00e9 prostriedky pre sledovanie a hodnotenie \u010dasu vykon\u00e1vania met\u00f3d. Podporuje sa sledovanie z\u00e1sobn\u00edka volan\u00ed konkr\u00e9tnych met\u00f3d a z\u00e1pis presnej \u0161tatistiky o volaniach met\u00f3d, pokr\u00fdvaj\u00facej tak\u00e9 metriky, ako s\u00fa \u010das vykon\u00e1vania a po\u010det volan\u00ed.              <\/ul>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=63895\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0448\u0435\u0441\u0442\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443 Java SE 25 (Java Platform, Standard Edition 24), \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 OpenJDK. \u0417\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0432 Java SE 25 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0430 \u043e\u0431\u0440\u0430\u0442\u043d\u0430\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441 \u043f\u0440\u043e\u0448\u043b\u044b\u043c\u0438 \u0432\u044b\u043f\u0443\u0441\u043a\u0430\u043c\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Java &#8212; \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0440\u0430\u043d\u0435\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 Java-\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0431\u0435\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0431\u0443\u0434\u0443\u0442 \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b \u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043f\u043e\u0434 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-143670","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0448\u0435\u0441\u0442\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443 Java SE 25 (Java Platform, Standard Edition 24), \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 OpenJDK.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sk\/blog\/news\/vypusk-java-se-25-lts-i-openjdk-25\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sk_SK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a Java SE 25 LTS \u0438 OpenJDK 25 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0448\u0435\u0441\u0442\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443 Java SE 25 (Java Platform, Standard Edition 24), \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 OpenJDK.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sk\/blog\/news\/vypusk-java-se-25-lts-i-openjdk-25\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-09-17T09:12:01+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-09-17T09:12:01+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Vydanie Java SE 25 LTS a OpenJDK 25 | ProHoster","description":"Po \u0161iestich mesiacoch v\u00fdvoja spolo\u010dnos\u0165 Oracle vydala platformu Java SE 25 (Java Platform, Standard Edition 24), pri\u010dom ako referen\u010dn\u00e1 implement\u00e1cia sa pou\u017e\u00edva otvoren\u00fd projekt OpenJDK.","canonical_url":"https:\/\/prohoster.info\/sk\/blog\/news\/vypusk-java-se-25-lts-i-openjdk-25","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sk_SK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a Java SE 25 LTS \u0438 OpenJDK 25 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0448\u0435\u0441\u0442\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443 Java SE 25 (Java Platform, Standard Edition 24), \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 OpenJDK.","og:url":"https:\/\/prohoster.info\/sk\/blog\/news\/vypusk-java-se-25-lts-i-openjdk-25","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2025-09-17T09:12:01+00:00","article:modified_time":"2025-09-17T09:12:01+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"143670","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 14:50:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 14:50:19","updated":"2026-01-23 14:50:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/143670","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/comments?post=143670"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/143670\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media?parent=143670"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/categories?post=143670"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/tags?post=143670"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}