Apache NetBeans 30 са JDK 21 и побољшаном подршком за Јаву

Последње ажурирање: 05/15/2026
  • Apache NetBeans 30 налаже JDK 21, омогућавајући јачу подршку за модерне Јава функције и поузданије алате.
  • Ово издање ажурира Maven, Ant и Gradle, и побољшава интеграцију са GlassFish, Payara и пословним Java токовима рада.
  • Веб, PHP и полиглот развој имају користи од побољшаног LSP-а, подршке за TypeScript React, руковања PHP 8.5 операторима цеви и интеграције анализатора рђе.
  • Побољшања корисничког интерфејса, бржи Гит преко JGit 7.6.0 и боља подршка за Markdown/TOML стварају глађе искуство за велике, вишејезичне пројекте.

Apache NetBeans 30 и JDK 21

Apache NetBeans 30 стиже као велика прекретница за IDE, а не само још једно ажурирање за одржавање које инсталирате и заборавите. Овим издањем, пројекат подиже технички ниво на модерну Јава основу, отклања дугогодишње недостатке у свакодневним развојним токовима рада и удвостручује интеграцију језичког сервера и визуелно побољшање тако да целокупно искуство делује флуидније и предвидљивије.

Највидљивија промена је то што је JDK 21 сада обавезна основа да изгради, тестира и покрене Apache NetBeans 30, што јасно сигнализира да је IDE чврсто усклађен са тренутном еволуцијом Јава језика уместо да се држи наслеђених ограничења. Поред тога, нова верзија освежава своје уграђене алате за изградњу (Maven, Ant и Gradle), појачава интеграцију са пословним Јава серверима као што су GlassFish и Payara, доноси бољу подршку за веб стекове као што су TypeScript React и модерни PHP, и укључује низ подешавања употребљивости и перформанси које ће програмери приметити од првог пројекта који отворе.

JDK 21 као минимални захтев: намерни скок ка модерној Јави

Захтев JDK 21 за Apache NetBeans 30

Apache NetBeans 30 званично захтева JDK 21 као минималну верзију Јаве за компајлирање, тестирање и покретање самог IDE-а, остављајући за собом старије JDK линије које су кочиле усвајање новијих језичких функција. Овај потез омогућава NetBeans платформи и њеним модулима да се ослоне на API-је, карактеристике перформанси и побољшања модела меморије која долазе са дугорочном подршком за грану Јаве 21.

За програмере, ова нова основна линија откључава изворну подршку за најновије конструкције Јава језика, укључујући записе, неименоване променљиве и модерне обрасце који се користе у локалним класама и switch изразима. Повезивањем IDE runtime-а са JDK 21, тим може поузданије да имплементира статичку анализу, рефакторисање и довршавање кода без сталног жонглирања заобилазним решењима компатибилности за застареле верзије Јаве.

Захтев за JDK 21 није само теоретска изјава на папиру—то мења начин на који подешавате своје окружење у пракси. Да бисте покренули Apache NetBeans 30, ваш систем мора имати инсталирану одговарајућу JDK 21 дистрибуцију и конфигурисану као подразумевану Јаву, без обзира да ли користите Linux, Windows или друге подржане платформе. Старије поставке које се и даље ослањају на JDK 20 или старије верзије мораће бити ажуриране пре него што будете могли у потпуности да искористите предности новог IDE-а.

Ова одлука такође усклађује NetBeans са ширим трендом екосистема., где се фрејмворци, библиотеке и сервери све више стандардизују око модерних LTS JDK-ова. Уместо да подржава широк спектар застарелих JVM-ова, IDE фокусира своје напоре за оптимизацију и тестирање на једну робусну мету, што генерално доводи до мањег броја суптилних грешака током извршавања и боље дугорочне одржавања. шири тренд екосистема

Утицај ове промене је посебно видљив у радним процесима изградње и имплементације, јер се пројекти који се већ покрећу на JDK 21 могу уређивати, компајлирати и профилисати са мање недоследности између IDE-а и производног окружења. За тимове који стандардизују Јаву 21, NetBeans 30 постаје природнији избор, како за развојне машине, тако и за системи континуиране интеграције.

Паметније уређивање Јаве: записи, неименоване променљиве и локалне класе

Једна од истакнутих области Apache NetBeans 30 је побољшање Јава едитора., где довршавање кода, предвиђање и анализа синтаксе добијају приметна побољшања која су посебно прилагођена новијим језичким конструкцијама. Циљ је смањење трења приликом писања модерни Јава код и да се минимизира број пута када морате да се борите са IDE-ом да бисте добили прави предлог или форматирање.

Подршка за записе је значајно побољшана, тако да IDE доследније обрађује компоненте записа, генерисане методе и повезане обрасце током уређивања. Програмери ће видети прецизније аутоматско допуњавање поља записа, бољу навигацију између дефиниција и употреба и мање грешака приликом рефакторисања модела података заснованих на записима у великој бази кода.

Неименоване променљиве такође имају користи од наменских исправки и побољшања стабилностиРаније верзије подршке за ову синтаксу могле су довести до досадних сукоба форматирања или неочекиваног понашања приликом инспекције кода. У NetBeans 30, форматер и парсер су подешени да правилно препознају ове конструкције, смањујући бучна упозорења и омогућавајући вам да пишете концизан код без козметичких оштећења.

Локалне класе, које су понекад збуњивале старије системе за довршавање, сада се глатко интегришу у предлоге и закључивање типова. Приликом креирања инстанци локалних класа или навигације између њихових декларација и места позива, IDE пружа прецизније савете и чистије искуство, што је посебно добродошло у сложеним методама или подешавањима тестирања где су локални помоћни типови уобичајени.

Поред тога, NetBeans 30 побољшава аутоматски увоз набрајања унутар switch наредби.У претходним верзијама, можда сте морали ручно да подешавате увоз или сте видели да IDE погрешно обрађује референце набрајања у одређеним контекстима. Ново издање пооштрава ово понашање, детектује када набрајање треба увести и обрађује те случајеве са мање ручне интервенције, што убрзава свакодневно кодирање.

Исправке стабилности и поузданост профилера

Развојни тим се такође фокусирао на решавање падова система и интерних недоследности што би могло да поремети рад током интензивних сесија отклањања грешака или профилисања. NetBeans 30 укључује колекцију критичних исправки грешака које циљају изузетке нултог показивача и друге грешке током извршавања које су се раније јављале у профилеру и повезаним алатима.

Решено је више изузетака нултог показивача који су блокирали профилер, што значи да сада можете да прикључите, прегледате и анализирате покренуте апликације са мањим ризиком од изненадног отказа IDE-а. За програмере који се у великој мери ослањају на подешавање перформанси и анализу меморије, само ово може драматично побољшати свакодневно искуство.

Такође су решени конфликти форматирања везани за неименоване променљиве и друге нове синтаксне облике, што помаже уреднику да одржи доследан стил у целом пројекту. Стабилизацијом ових угаоних случајева, NetBeans тим смањује трење између аутоматизованих правила форматирања и реалности модерне Јаве, тако да тимови могу да наставе да користе конфигурације стила дељеног кода без сталних ручних исправки.

Кумулативни ефекат ових исправки је предвидљивије и поузданије окружење., посебно под великим оптерећењем, као што је профилисање великих пословних апликација или брзо пребацивање између више пројеката и сесија. Уместо да троше време на опоравак од грешака у IDE-у, програмери могу да се фокусирају на логику и оптимизацију апликације.

У комбинацији са захтевом JDK 21, ова побољшања стабилности чине да IDE делује кохерентније., јер су многи алати и подсистеми сада дизајнирани имајући у виду јединствено, модерно окружење за извршавање. Резултат је мање суптилних некомпатибилности између језичких карактеристика, профилисаних кукица и понашања уређивача.

Ажурирани алати за изградњу: Maven, Ant и Gradle спремни за будућност

Apache NetBeans 30 освежава своју интеграцију са најчешће коришћеним Јава системима за изградњу, тако да се пројекти изграђени помоћу модерних цевовода могу отворити и управљати њима без инсталирања додатних додатака или ручних надоградњи. Ово је посебно важно у пословним окружењима где тимови жонглирају вишеструким алатима за изградњу унутар исте организације.

IDE сада изворно укључује Maven 3.9.15, што корисницима омогућава приступ недавној и робусној верзији Maven-а директно из NetBeans-а. Ово ажурирање обезбеђује бољу компатибилност са најновијим додацима, стратегијама за решавање зависности и конфигурацијама репозиторијума, што је кључно за велике пројекте са више модула и корпоративне репозиторијуме артефаката.

Подршка за Ant је такође модернизована укључивањем Ant 1.10.17Иако Ant можда није најновији алат на тржишту, многи застарели и инфраструктурни пројекти се и даље ослањају на њега, а ажурирана уграђена верзија помаже да скрипте за изградњу раде глатко, без присиљавања тимова да одржавају разне екстерне инсталације.

Интеграција са Gradle-ом је подешена тако да су њени подразумевани параметри већ подешени за предстојећа JDK 26 окружења.Иако JDK 26 још увек није стандардно окружење за извршавање, ова конфигурација усмерена ка будућности припрема кориснике NetBeans-а за следећи талас ажурирања Java платформе. Како пројекти засновани на Gradle-у буду усвајали новије JDK-ове, IDE ће бити боље позициониран да их обради са мање подешавања у последњем тренутку.

У комбинацији, ова ажурирања алата за изградњу чине NetBeans 30 атрактивнијом опцијом за организације. који одржавају комбинацију модерних микросервиса, старих модула и дељених библиотека. Без обзира да ли ваш цевовод првенствено покреће Maven, Ant или Gradle, IDE се може повезати са њим са мање неусклађености верзија и мање ручне конфигурације.

Enterprise Java и модернизација на страни сервера

Развој предузећа је кључно подручје фокуса у овом издању, а Apache NetBeans 30 укључује конкретна побољшања како би се серверски Java токови посла одржавали ажурним. Конкретно, IDE проширује своју изворну подршку за Jakarta EE-центричне апликацијске сервере и пооштрава своју интеграцију са повезаним процесима имплементације и отклањања грешака.

Нова верзија уводи званичну подршку за GlassFish 7.1.0 и GlassFish 8.0.0, што омогућава програмерима да креирају, имплементирају и управљају Jakarta EE апликацијама на овим верзијама сервера директно из IDE-а. Ово укључује руковање конфигурацијом, акције имплементације и инспекцију логова, све усклађено са тренутним GlassFish екосистемом.

Досадне грешке при покретању Пајара сервера у вези са опцијама контролних тачака су исправљене.Раније су одређене конфигурације могле да изазову кварове током покретања сервера, приморавајући програмере да решавају проблеме са опцијама на страни сервера уместо да се фокусирају на код апликације. Са овим исправкама, интеграција са Payara-ом би требало да буде стабилнија и мање склона нејасним проблемима током извршавања.

Пооштравањем подршке за ове сервере, NetBeans 30 јача своју позицију у корпоративним Јава окружењима, где су Jakarta EE, микросервиси и велики трансакциони системи уобичајени. Могућност беспрекорног контролисања инстанци GlassFish-а и Payara-е из IDE-а скраћује повратну спрегу између промена кода, имплементације и верификације током извршавања.

За тимове који се ослањају на NetBeans као свеобухватну развојну станицу за предузећа, ова побољшања значе мање ручних корака, мање поновних покретања сервера узрокованих погрешним конфигурацијама на страни IDE-а и лакши пут ка усвајању новијих издања сервера када пројекти мигрирају на ажуриране спецификације Jakarta EE.

Протокол језичког сервера и побољшања веб развоја

NetBeans 30 посвећује посебну пажњу веб и фронтенд стековима надоградњом свог клијента Language Server Protocol (LSP)., што је мост који повезује IDE са модерним језичким серверима за JavaScript, TypeScript и друге језике. Ово резултира бржим и богатијим искуством при раду на хибридним апликацијама које комбинују Јава бекенд са богатим кодом на страни клијента.

LSP клијент сада нуди нативну подршку за TypeScript React, што олакшава развој фронтенда заснованих на React-у без напуштања NetBeans-а. Са овом подршком, функције попут аутоматског довршавања, дијагностике и навигације у TSX датотекама постају прецизније и усклађене са уобичајеним праксама развоја React-а.

Решени су сукоби размака у JavaScript класама које користе статичке иницијализаторе, што је добродошао детаљ за програмере којима је стало до чистог форматирања и доследног стила. Ове исправке помажу уређивачу да боље разуме структуру модерног Јаваскрипта и избегне погрешно размакање у сложеним декларацијама класа.

Ни PHP екосистем унутар NetBeans-а није заостаоIDE сада подржава нови оператор „pipe“ представљен у PHP 8.5, омогућавајући PHP програмерима да експериментишу са ажурираним језичким функцијама без грешака у парсирању или недостајућег истицања. Ово осигурава да бекенд тимови који користе модерне PHP верзије могу остати у NetBeans окружењу без наилажења на синтаксна ограничења.

Све у свему, ова ажурирања LSP-а и језика позиционирају NetBeans 30 као компетентнији избор. за фул-стек програмере који своје време деле између Јава микросервиса, TypeScript React фронтенда и савремених PHP API-ја. Уместо жонглирања са више специјализованих алата, већи део тока рада може бити централизован у једном IDE-у.

Побољшања корисничког интерфејса и визуелна удобност

Визуелни сјај и флуидност интерфејса су још једна јака тема у Apache NetBeans 30Тим је радио и на целокупном изгледу IDE-а и на начину на који се понаша током интензивних операција као што су покретање и учитавање пројеката, циљајући на глаткији осећај свакодневног рада.

Рендерер је ажуриран на FlatLaf 3.7.1, што даје IDE-у чистији и доследнији визуелни изглед на свим платформама. Ово ажурирање побољшава начин на који се контроле, дијалози и компоненте уређивача цртају на екрану, доприносећи модернијем и мање претрпаном интерфејсу који остаје удобан током дугих сесија кодирања.

Почетно учитавање уводног екрана је премештено у нит за отпрему догађаја како би се избегло одређено замрзавање система и перципирано застојивање приликом покретања NetBeans-а. Овом променом је мања вероватноћа да ће фаза покретања изазвати привремена закључавања или тренутке неодзива, што чини искуство покретања бржим и поузданијим.

Ова побољшања корисничког интерфејса нису искључиво козметичкаСтабилан, визуелно кохерентан IDE смањује когнитивно оптерећење, посебно за програмере који проводе много сати дневно унутар истог интерфејса. Прозори који реагују, глаткији прелази и чистија тема помажу у одржавању фокуса на коду уместо на ометањима које изазива сам алат.

Када се комбинује са едитором, профилером и побољшањима Гита, побољшани интерфејс чини да цело окружење делује више као један кохезивни алат, а не као скуп лабаво повезаних модула, што може бити важно за укључивање нових чланова тима и стандардизацију заједничког IDE-а у целој организацији.

Гит перформансе и руковање великим репозиторијумом

Радни токови контроле верзија добијају солидно побољшање перформанси у Apache NetBeans 30, посебно за тимове који раде са великим репозиторијумима и густо попуњеним историјама. Ове промене се фокусирају на смањење времена чекања у уобичајеним Git операцијама и побољшање одзива корисничког интерфејса приликом скенирања стања пројекта.

Интерни Гит мотор је ажуриран на JGit 7.6.0, модерно издање имплементације Гита засноване на Јави. Ова надоградња доноси побољшања у руковању протоколима, перформансама и стабилности, што NetBeans користи за брже провере статуса и глађе интеракције са удаљеним репозиторијумима.

Једна кључна оптимизација је то што IDE сада обрађује информације о статусу датотека у серијама. приликом приказивања дијалога за потврду измена и ажурирања статуса. Уместо појединачног упита за сваку датотеку на начин који захтева много ресурса, NetBeans одлаже тешке позиве и групише их, смањујући оптерећење и IDE-а и основног система датотека.

Као резултат тога, брзина учитавања стања датотека у прозорима за потврду и другим Гит дијалозима је знатно боља., посебно за монорепозиторијуме и велике пословне пројекте где се хиљаде датотека могу мењати између грана. Програмери проводе мање времена пратећи индикаторе напретка, а више времена доносећи стварне одлуке о својим изменама.

Ова пажња посвећена перформансама Гита чини НетБинс 30 практичнијим за модерне колаборативне токове рада., где су често гранање, ребазирање и рефакторисање великих размера норма. Уклањањем дела трења око операција контроле изворног кода, IDE доприноси глађем CI/CD цевоводу и бољој продуктивности тима.

Markdown, TOML и Rust: алати за модерне полиглотске пројекте

Поред Јаве и класичних веб стекова, Apache NetBeans 30 уводи неколико нових интеграција усмерен на подршку пројектима документације, конфигурације и системског програмирања који су све чешћи у вишејезичним кодним базама.

Уређивач сада пружа преглед слика и проверу правописа за Markdown документе, што представља значајно побољшање квалитета живота за програмере који одржавају техничку документацију, README датотеке или интерне водиче директно поред кода. Видети слике приказане у тексту и открити грешке у куцању у ходу олакшава одржавање докумената уредним и ажурним.

TOML шаблони су додати у IDE, што поједностављује креирање и одржавање конфигурационих датотека које користе многи модерни алати и екосистеми. Без обзира да ли радите са метаподацима изградње, подешавањима апликације или дескрипторима Rust пројекта, уграђена TOML подршка помаже у стандардизацији конфигурација и смањењу грешака у форматирању.

NetBeans 30 такође укључује почетну интеграцију са rust-analyzer-ом, отварајући врата за озбиљнији развој у Русту унутар IDE-а. Иако се ова интеграција још увек развија, она већ јача алате доступне за системско програмирање, развој уграђених система и компоненте критичне за перформансе које се могу писати у Русту заједно са сервисима заснованим на Јави.

Ови додаци истичу намеру пројекта да остане релевантан у свету вишејезичних језика, где документација, инфраструктура као код и више програмских језика коегзистирају у истом репозиторијуму. Ширењем ван чисте Јаве, NetBeans 30 постаје способнији да служи као централно чвориште за различите технолошке стекове.

Опције инсталације за Apache NetBeans 30 на Linux-у

Корисници Линукса имају неколико начина да инсталирају и покрену Apache NetBeans 30, у зависности од тога да ли преферирају класичне верзије изворног кода или практичније формате паковања попут Snap-а и Flatpak-а. У свим случајевима, морате се уверити да је на систему инсталирана компатибилна JDK 21 дистрибуција пре покретања IDE-а.

За оне који воле потпуну контролу, компајлирање NetBeans-а из изворног кода остаје опција.Можете преузети изворне архиве са званичне веб странице Apache NetBeans-а, распаковати их у директоријум по вашем избору, а затим прећи на тај директоријум у терминалу. Када се тамо нађете, покрените мрав Команда ће покренути процес изградње за IDE.

Након успешног завршетка компилације, IDE се може покренути извршавањем скрипте која се налази на ./nbbuild/netbeans/bin/netbeansОвај приступ је посебно атрактиван ако сте заинтересовани за хаковање самог IDE-а, примену прилагођених закрпа или тестирање развојних грана.

Ако су практичност и брзо подешавање важнији, NetBeans је доступан као Snap пакет на дистрибуцијама које подржавају Snap. Можете га инсталирати помоћу једноставне команде у терминалу: судо снап инсталл нетбеанс –цлассицОва метода обрађује зависности и ажурирања на једноставан начин и вероватно је најлакши пут за многе кориснике десктоп рачунара.

Додатна алтернатива је инсталирање Apache NetBeans-а преко Flatpak-а, под условом да ваш Linux систем има омогућену подршку за Flatpak и конфигурисан је са Flathub репозиторијумом. Команда за инсталацију је инсталација флатпак пакета са флатхаба (org.apache.netbeans), који ће преузети NetBeans Flatpak пакет и интегрисати га са вашим десктоп окружењем.

Компатибилност платформи, Линукс дистрибуције и режими приказа

Глатко покретање Apache NetBeans-а и JDK 21 такође зависи од оперативног система и графичког окружења. које користите, посебно на Linux дистрибуцијама које подржавају и X.org и Wayland. Различите комбинације верзија, архитектура и режима приказа имају различите нивое подршке.

На Oracle Linux-у, више издања и архитектура су компатибилнеOracle Linux 10 подржава AArch64 и x64 системе са JDK 21.0.8, али само у XWayland режиму. Oracle Linux 9 је доступан за AArch64, где је подржан само X.org режим, као и за x64, где су и X.org и XWayland употребљиви, са додатом подршком за XWayland почев од JDK 21.0.7.

За Oracle Linux 8, и AArch64 и x64 платформе су подржане искључиво под X.org, при чему Wayland режими нису подржани. Oracle Linux 7 на x64 такође ради само у X.org режиму, што је у складу са старијом природом те дистрибуције и њеним фокусом на традиционални X11 стек.

Корисници Убунтуа имају низ подржаних верзијаUbuntu Linux 26.04 LTS на x64 ради са JDK 21.0.11 само у XWayland режиму, док Ubuntu 25.10 на x64 подржава JDK 21.0.9, такође ограничен на XWayland. Ubuntu 24.04 LTS на x64 користи подршку и за X.org и за XWayland са JDK 21.0.3, дајући корисницима већу флексибилност у избору десктоп окружења.

Ubuntu 22.04 LTS на x64 је ограничен на X.org режим, док Wayland није подржанОвај детаљ је важан ако решавате проблеме са понашањем прозора, грешкама корисничког интерфејса или аномалијама у перформансама, јер пребацивање између XWayland-а и X.org-а, где је то дозвољено, може значајно променити начин на који се IDE понаша на вашем систему.

Red Hat Enterprise Linux (RHEL) такође има широку подршку за JDK 21RHEL 10 на AArch64 и x64 подржава JDK 21.0.8, али само у XWayland режиму. RHEL 9 на AArch64 је ограничен на X.org режим, док RHEL 9 на x64 може да користи и X.org и XWayland, са подршком за XWayland уведеном у JDK 21.0.7. RHEL 8 на AArch64 и x64 је ограничен на X.org, а RHEL 7 на x64 такође ради искључиво са X.org.

SUSE Linux Enterprise Server прати сличан образацSLES 16 на x64 подржава JDK 21.0.11, али само са XWayland-ом, док је SLES 15 на x64 ограничен на X.org режим без подршке за Wayland. Разумевање ових комбинација помаже да се избегне забуна када одређене графичке функције или понашање прозора не одговарају очекивањима на различитим системима приказа.

Повратне информације из стварног света и проблеми са изградњом JDK 21 пројекта

Уз званична саопштења, повратне информације заједнице откривају како се NetBeans понаша у стварним сценаријимаЈедан пријављени случај укључује Apache NetBeans 19 на Windows 11 Pro са JDK 21, где корисник наилази на ситуацију у којој изградња пројекта не успева са генеричком грешком „Изградња није успела„порука“ и без даљег објашњења.

Према том извештају, исти пројекат се исправно компајлира под JDK 20, што сугерише да старије издање NetBeans 19 није било у потпуности усклађено са JDK 21 у то време. Корисник помиње да не зна да ли је ово функционисало у претходним верзијама и да не планира да поднесе захтев за преузимање (pull request), што показује да неке комбинације IDE и JDK и даље могу представљати грубе ивице без јасне дијагностике.

Оваква врста повратних информација наглашава зашто је експлицитни захтев Apache NetBeans 30 за JDK 21 важанЗваничним циљањем ове верзије Јаве, пројекат може темељније тестирати у односу на њу, ажурирати интерне API-је и интеграције алата у складу са тим, и избећи нејасне грешке „Израда није успела“ које су мучиле претходне итерације када су се користиле са новијим JDK-овима који нису били у потпуности подржани.

Корисници који надограђују са старијих верзија NetBeans-а на 30 треба да имају на уму да усвајање JDK 21 треба да буде у складу са IDE-ом. може решити многе проблеме који произилазе из неусклађених очекивања између алата и извршног окружења. Када се и IDE и пројекат покрећу са тестираном комбинацијом, проблеми са изградњом постају лакши за дијагностиковање, а званична издања ће се вероватно понашати доследно.

Иако нису елиминисани сви гранични случајеви, Apache NetBeans 30 се јасно позиционира као верзија дизајнирана да прихвати JDK 21. као грађанин првог реда, а не као циљ компатибилности који се најбоље постиже. Ово даје заједници стабилну референтну тачку приликом пријављивања грешака или захтевања побољшања везаних за модерне Јава функције.

Све ове промене – JDK 21 као основа, паметнија подршка за Јаву, освежени алати за изградњу, јача интеграција са предузећима, боље веб и PHP функције, побољшане перформансе Гита, побољшања корисничког интерфејса и додатни алати за Markdown, TOML и Rust – заједно померају Apache NetBeans 30 у домен истински модерног IDE-а. то је боље усклађено са начином на који се професионални софтвер данас гради, било да је реч о малим пројектима отвореног кода или великим пословним окружењима.

јава-3
Повезани чланак:
Велика ажурирања у Јава екосистему: језичке иновације, побољшања за предузећа, безбедност и еволуција алата
Релатед постс: