{"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\/sq\/blog\/news\/vypusk-java-se-25-lts-i-openjdk-25","title":{"rendered":"L\u00ebshimi i Java SE 25 LTS dhe OpenJDK 25","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Pas six muajsh zhvillimi, kompania Oracle publikoi platform\u00ebn Java SE 25 (Java Platform, Standard Edition 24), t\u00eb cil\u00ebn si realizim referenc\u00eb e p\u00ebrdor projektin e hapur OpenJDK. P\u00ebrve\u00e7 largimit t\u00eb disa mund\u00ebsive t\u00eb vjetra, Java SE 25 ruan pajtueshm\u00ebrin\u00eb prapa me versionet e kaluara t\u00eb platform\u00ebs Java \u2014 shumica e projekteve Java t\u00eb shkruara m\u00eb par\u00eb do t\u00eb funksionojn\u00eb pa ndryshime n\u00ebn menaxhimin e versionit t\u00eb ri. Nd\u00ebrtesat e gatshme p\u00ebr instalim t\u00eb Java SE 25 (JDK, JRE dhe Server JRE) jan\u00eb p\u00ebrgatitur p\u00ebr Linux (x86_64, AArch64), Windows (x86_64) dhe macOS (x86_64, AArch64). Realizimi referenc\u00eb i Java SE 25, i zhvilluar brenda projektit OpenJDK, \u00ebsht\u00eb plot\u00ebsisht i hapur n\u00ebn licenc\u00ebn GPLv2 me p\u00ebrjashtime nga GNU ClassPath, q\u00eb lejojn\u00eb lidhjen dinamike me produkte tregtare.     <\/p>\n<p>Java SE 25 \u00ebsht\u00eb klasifikuar si nj\u00eb l\u00ebshim me mb\u00ebshtetje t\u00eb zgjeruar, p\u00ebr t\u00eb cilin do t\u00eb l\u00ebshohen p\u00ebrmir\u00ebsime deri n\u00eb vitin 2033 (p\u00ebrmir\u00ebsimet publike do t\u00eb dalin deri n\u00eb shtator 2030). Si nj\u00eb deg\u00eb me mb\u00ebshtetje afatgjat\u00eb (LTS) vazhdojn\u00eb t\u00eb mbahen gjithashtu deg\u00ebt Java SE 17 dhe 21, p\u00ebr t\u00eb cilat do t\u00eb l\u00ebshohen p\u00ebrmir\u00ebsime deri n\u00eb vitet 2029 dhe 2031, p\u00ebrkat\u00ebsisht (publike \u2014 deri n\u00eb 2026 dhe 2028). Mb\u00ebshtetje e zgjeruar p\u00ebr deg\u00ebt LTS t\u00eb Java SE 8 dhe 11 do t\u00eb vazhdoj\u00eb deri n\u00eb vitet 2030 dhe 2032.     <\/p>\n<p>N\u00eb mesin e risive t\u00eb ofruara n\u00eb Java SE 25 (1, 2, 3, 4):   <\/p>\n<ul>\n<li class=\"l\"> Shtohet API eksperimental StableValue p\u00ebr pun\u00ebn me objekte q\u00eb p\u00ebrmbajn\u00eb t\u00eb dh\u00ebna t\u00eb pandryshueshme dhe trajtohen n\u00eb JVM si constante. K\u00ebtyre objekteve u aplikohen optimizime performanc\u00ebs, t\u00eb ngjashme me fushat me fjal\u00ebn ky\u00e7e \u00abfinal\u00bb. API StableValue ndan krijimin e vlerave konstante dhe inicializimin e tyre, garanton q\u00eb vlera mund t\u00eb inicializohet vet\u00ebm nj\u00eb her\u00eb, zvog\u00eblon koh\u00ebn e nisjes s\u00eb aplikacioneve dhe lejon p\u00ebrdorimin e optimizimeve t\u00eb zvog\u00eblimit t\u00eb konstanteve (constant-folding) n\u00eb kodin e p\u00ebrdoruesit, q\u00eb m\u00eb par\u00eb jan\u00eb p\u00ebrdorur vet\u00ebm n\u00eb kodin e brendsh\u00ebm t\u00eb JDK. class Application {         \/\/ Ishte:         \/\/ static final UserService USERS = new UserService();         \/\/ U b\u00eb:         static final StableValue USERS = StableValue.of();           public static UserService users() {            return USERS.orElseSet(UserService::new);         }      }\n<li class=\"l\"> Shtohet API eksperimental p\u00ebr kodimin dhe dekodimin e objekteve me \u00e7el\u00ebsa kriptografik\u00eb, certifikata dhe lista t\u00eb certifikatave t\u00eb t\u00ebrhequra, duke p\u00ebrdorur formatin PEM (Pivacy-Enhanced Mail).\n<li class=\"l\"> Shtimi i mb\u00ebshtetjes p\u00ebr vlerat e kufizuara (Scoped Values) lejon ndarjen e t\u00eb dh\u00ebnave t\u00eb pandryshueshme n\u00eb shkall\u00eb dhe shk\u00ebmbimin efektiv t\u00eb t\u00eb dh\u00ebnave midis n\u00ebnprocesseve (vlerat trash\u00ebzohen). Scoped Values po zhvillohen p\u00ebr t\u00eb z\u00ebvend\u00ebsuar mekanizmin e variablave lokal\u00eb t\u00eb procesit (thread-local variables) dhe jan\u00eb m\u00eb efikase kur p\u00ebrdoren nj\u00eb num\u00ebr shum\u00eb t\u00eb madh procesesh virtual\u00eb (mij\u00ebra dhe miliona procese). Dallimi kryesor midis Scoped Values dhe variablave lokal\u00eb t\u00eb procesit \u00ebsht\u00eb se t\u00eb parat shkruhen nj\u00eb her\u00eb, nuk mund t\u00eb ndryshohen m\u00eb pas dhe mbeten t\u00eb disponueshme vet\u00ebm gjat\u00eb ekzekutimit t\u00eb procesit.\n<li class=\"l\"> Shtuar API p\u00ebr t\u00eb p\u00ebrdorur funksionet kriptografike t\u00eb formimit t\u00eb \u00e7el\u00ebsit (KDF, key derivation function), t\u00eb cilat lejojn\u00eb krijimin e \u00e7el\u00ebsave shtes\u00eb me gjat\u00ebsi t\u00eb nevojshme mbi baz\u00ebn e \u00e7el\u00ebsit sekret (p.sh., fjal\u00ebkalimit) dhe nj\u00eb grup t\u00eb dh\u00ebnash t\u00eb rast\u00ebsishme.\n<li class=\"l\"> Rq 32-bit x86. P\u00ebrfundimi i mb\u00ebshtetjes p\u00ebr sistemet 32-bit x86 ka lejuar thjeshtimin e infrastruktur\u00ebs p\u00ebr nd\u00ebrtimin dhe testimin e JDK, si dhe ka mund\u00ebsuar implementimin e mund\u00ebsive t\u00eb lidhura me platforma, pa krijimin e menaxhuesve t\u00eb fallback p\u00ebr sistemet 32-bit x86.\n<li class=\"l\"> Shtuar mund\u00ebsia e p\u00ebrdorimit t\u00eb nj\u00eb shprehje &#171;import module M&#187; p\u00ebr t\u00eb importuar menj\u00ebher\u00eb t\u00eb gjitha paketat e eksportuara nga moduli i caktuar. Ky ndryshim thjeshton ndjesh\u00ebm riciklimin e bibliotekave modulare, duke lejuar lidhjen e bibliotekave dhe klasave pa p\u00ebrcaktimin e vendit t\u00eb tyre n\u00eb hierarkin\u00eb e pakove. P\u00ebr shembull, p\u00ebrcaktimi &#171;import module java.base&#187; do t\u00eb rezultoj\u00eb n\u00eb importimin e t\u00eb gjitha 54 paketimeve q\u00eb p\u00ebrfshihen n\u00eb modul java.base, t\u00eb cilat m\u00eb par\u00eb duhej t\u00eb p\u00ebrmendeshin ve\u00e7mas (&#171;import java.io.*&#187;, &#171;import java.util.*&#187; etj.).\n<li class=\"l\"> Propozuar nj\u00eb version kompakt i kodit, i cili mund t\u00eb jet\u00eb i dobish\u00ebm p\u00ebr m\u00ebsim dhe n\u00eb zhvillimin e aplikacioneve t\u00eb vogla. N\u00eb form\u00ebn e kompakt, nuk k\u00ebrkohet p\u00ebrcaktimi i klasave t\u00eb tep\u00ebrta, importohen automatikisht API-t\u00eb standarde dhe jan\u00eb t\u00eb disponueshme metoda t\u00eb thjeshtuara t\u00eb inputit\/outputit. P\u00ebr shembull, aplikacioni &#171;Hello, World!&#187; mund t\u00eb reduktohet n\u00eb:       void main() {         IO.println(&#171;Hello, World!&#187;);     }\n<li class=\"l\"> \u00cbsht\u00eb lejuar t\u00eb jepen shprehje n\u00eb nd\u00ebrtuesit e shprehjeve para thirrjes s\u00eb super(...), e cila p\u00ebrdoret p\u00ebr thirrjen e qart\u00eb t\u00eb nd\u00ebrtuesit t\u00eb klas\u00ebs prind nga nd\u00ebrtuesi i klas\u00ebs s\u00eb trash\u00ebguar, p\u00ebr aq koh\u00eb sa k\u00ebto shprehje nuk referohen n\u00eb instanc\u00ebn q\u00eb nd\u00ebrtuesi po krijon. class Outer { void hello() { System.out.println(\"Hello\"); } class Inner { Inner() { hello(); super(); } } }\n<li class=\"l\"> \u00cbsht\u00eb shtuar nj\u00eb mod aktivizimi gjenerativ p\u00ebr mbledh\u00ebsin e mbetjeve Shenandoah, ku objektet e vjetra dhe ato t\u00eb sapo krijuara trajtohen ve\u00e7mas p\u00ebr t\u00eb rritur efikasitetin e pastrimit t\u00eb objekteve me jet\u00ebshkurt\u00ebr. Ky mod i ri siguron nj\u00eb kapacitet m\u00eb t\u00eb parashikuesh\u00ebm, q\u00ebndres\u00eb ndaj ndryshimeve t\u00eb ngarkes\u00ebs dhe zvog\u00eblim t\u00eb konsumit t\u00eb memories gjat\u00eb mbledhjes s\u00eb mbetjeve. Planifikuesi Shenandoah synon t\u00eb reduktoj\u00eb koh\u00ebt e ndalimeve gjat\u00eb mbledhjes s\u00eb mbetjeve duke kryer nj\u00eb volum m\u00eb t\u00eb madh pun\u00ebsh paralel me ekzekutimin e aplikacioneve Java.\n<li class=\"l\"> \u00cbsht\u00eb thjeshtuar krijimi i caches p\u00ebr ngarkes\u00eb dhe kompozim t\u00eb klasave p\u00ebrpara koh\u00ebs (Ahead-of-Time), q\u00eb lejon p\u00ebrshpejtimin e nisjes s\u00eb HotSpot JVM duke aktivizuar klasat n\u00eb nj\u00eb gjendje t\u00eb ngarkuar dhe t\u00eb kompozuar tashm\u00eb. Gjat\u00eb nisjes nuk nevojiten m\u00eb operacione t\u00eb ve\u00e7anta p\u00ebr regjistrimin e aktiviteteve dhe krijimin e caches, mjafton nj\u00eb komand\u00eb: java -XX:AOTCacheOutput=app.aot -cp app.jar com.example.App ...\n<li class=\"l\"> N\u00eb nisjen e HotSpot Java VM \u00ebsht\u00eb realizuar mund\u00ebsia e p\u00ebrdorimit t\u00eb profileve t\u00eb ekzekutimit t\u00eb metodave, t\u00eb marra nga nisja e kaluar e aplikacionit. Kjo ndryshim lejon q\u00eb JIT-kompilatori t\u00eb ec\u00eb p\u00ebrpara pa mbledhur statistika dhe t\u00eb filloj\u00eb menj\u00ebher\u00eb t\u00eb gjeneroj\u00eb kodin natyror pa pritur formimin e profilit.\n<li class=\"l\"> N\u00eb HotSpot JVM \u00ebsht\u00eb implementuar mb\u00ebshtetje p\u00ebr header-a kompakte t\u00eb objekteve, t\u00eb cilat n\u00eb sisteme 64-bit kan\u00eb zvog\u00ebluar madh\u00ebsin\u00eb nga 96 n\u00eb 64 bite (nga 12 n\u00eb 8 byte). Zvog\u00eblimi i madh\u00ebsis\u00eb s\u00eb header-eve ndihmon n\u00eb uljen e madh\u00ebsis\u00eb s\u00eb grumbullit dhe rrit efikasitetin e pun\u00ebs s\u00eb caches.\n<li class=\"l\"> \u00cbsht\u00eb propozuar nj\u00eb implementim testues t\u00eb API Vector, q\u00eb ofron funksione p\u00ebr llogaritjet vektoriale, t\u00eb cilat realizohen duke p\u00ebrdorur instruksionet vektoriale t\u00eb procesor\u00ebve x86_64 dhe AArch64 dhe lejojn\u00eb aplikimin e operacioneve nj\u00ebkoh\u00ebsisht n\u00eb disa vlera (SIMD). Ndryshe nga mund\u00ebsit\u00eb e avokimit t\u00eb vetvetish\u00ebm t\u00eb operacioneve skalar t\u00eb ofruara nga kompili i JIT HotSpot, API i ri ofron mund\u00ebsin\u00eb p\u00ebr t\u00eb menaxhuar qart\u00eb vektorizimin p\u00ebr p\u00ebrpunimin paralel t\u00eb t\u00eb dh\u00ebnave.\n<li class=\"l\"> \u00cbsht\u00eb propozuar p\u00ebr testim varianti i pest\u00eb paraprak i API p\u00ebr paralelizmin e strukturuar (Structured Concurrency), q\u00eb thjeshton zhvillimin e aplikacioneve me shum\u00eb fije p\u00ebrmes trajtimit t\u00eb disa detyrave q\u00eb ekzekutohen n\u00eb fije t\u00eb ndryshme si nj\u00eb blok i vet\u00ebm.\n<li class=\"l\"> N\u00eb mekanizmin e p\u00ebrputhjes me modelin \u00ebsht\u00eb propozuar varianti i tret\u00eb paraprak i mund\u00ebsis\u00eb p\u00ebr t\u00eb p\u00ebrdorur llojet primitive (int, byte, char dhe lloje t\u00eb tjera baz\u00eb q\u00eb nuk jan\u00eb objekte) n\u00eb t\u00eb gjitha llojet e template-ve, n\u00eb operatorin 'instanceof' dhe n\u00eb blloqet 'switch'. switch (x.getStatus()) { case 0 -&gt; 'okay'; case 1 -&gt; 'warning'; case 2 -&gt; 'error'; case int i -&gt; 'status i panjohur: ' + i; } if (i instanceof byte b) { ... b ... }\n<li class=\"l\"> N\u00eb JDK Flight Recorder (JFR) \u00ebsht\u00eb shtuar mb\u00ebshtetje eksperimentale p\u00ebr profilizimin me ndjekje m\u00eb t\u00eb sakt\u00eb t\u00eb konsumit t\u00eb burimeve CPU n\u00eb platform\u00ebn Linux. Informacioni mbi koh\u00ebn e ekzekutimit t\u00eb strukturave t\u00eb ndryshme mund t\u00eb vizualizohet n\u00eb m\u00ebnyr\u00eb intuitive duke p\u00ebrdorur diagramet me ngjyr\u00eb 'FlameGraph'.\n<li class=\"l\"> \u00cbsht\u00eb rritur stabiliteti i pun\u00ebs s\u00eb JDK Flight Recorder (JFR) gjat\u00eb mostrimit asinkron t\u00eb stek\u00ebve t\u00eb fijeve Java p\u00ebrmes anashkalimit t\u00eb stek\u00ebve t\u00eb thirrjeve vet\u00ebm n\u00eb 'pikave t\u00eb sigurta' (safepoints).\n<li class=\"l\"> N\u00eb JDK Flight Recorder (JFR) jan\u00eb shtuar mjete p\u00ebr ndjekjen dhe vler\u00ebsimin e koh\u00ebs s\u00eb ekzekutimit t\u00eb metodave. Mb\u00ebshtetet ndjekja e stek\u00ebve t\u00eb thirrjeve t\u00eb metodave specifike dhe regjistrimi i statistikave t\u00eb sakt\u00eb mbi thirrjet e metodave, p\u00ebrfshir\u00eb tregues si koh\u00ebn e ekzekutimit dhe numrin e thirrjeve.              <\/ul>\n<p>Burimi: <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.1.1 - 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\/sq\/blog\/news\/vypusk-java-se-25-lts-i-openjdk-25\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\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\/sq\/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\udd47Lan\u00e7imi i Java SE 25 LTS dhe OpenJDK 25 | ProHoster","description":"Pas gjasht\u00eb muajsh zhvillimi, kompania Oracle publikoi platform\u00ebn Java SE 25 (Java Platform, Standard Edition 24), si implementimin referenc\u00eb t\u00eb s\u00eb cil\u00ebs p\u00ebrdoret projekti i hapur OpenJDK.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/news\/vypusk-java-se-25-lts-i-openjdk-25","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","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\/sq\/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\/sq\/wp-json\/wp\/v2\/posts\/143670","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=143670"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/143670\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=143670"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=143670"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=143670"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}