Java® kūrimo programinė įranga, taip pat žinoma kaip Java® karkasai, yra programos, skirtos supaprastinti ir papildyti Java® kodavimo patirtį. Tai daroma naudojant papildinius su papildomomis funkcijomis, kaip ir įtraukiant kodavimo rinkinius, kurie automatiškai generuoja kodą pagal programuotojo poreikį. Kiekvienas Java® kūrimo programinės įrangos tipas yra skirtingas, o geriausia nustatoma atsižvelgiant į kelis veiksnius. Prieš pasirenkant vieno tipo programinę įrangą, reikia patikrinti programinės įrangos tinkamumą tam tikroms pramonės šakoms, ar galima išplėsti architektūrą, ar ji turi internetinę bendruomenę ir dokumentaciją, taip pat jos funkcijų gausą.
Kiekvienas „Java®“ kūrimo programinės įrangos tipas turi „pasvirimą“, o tai reiškia, kad dėl jos funkcijų ji vienai pramonės šakai yra geresnė už kitą. Java® naudojama bendroms programoms, žiniatinklio programoms, verslo žvalgybos programoms ir pan. Kiekvienas programuotojas turi skirtingą programinės įrangos poreikį, todėl paprastai jis turi funkcijų, kurios yra labiau linkusios nei kitos. Pasirinkus programuotojo pramonei tinkančią programinę įrangą, bus geriau nei programinę įrangą, kuri yra linkusi į kitą.
Architektūra reiškia standartus ir kodavimo programas, kurias naudoja Java® kūrimas, be pačios Java® naudojimo. Kai kurioms programinės įrangos kūrimo programoms bus taikomi tik pramonėje priimti kodavimo standartai, o kitose naudojami standartai, kurie gali būti efektyvesni, bet ne verslo tikslais. Tuo pačiu metu kai kurias kūrimo architektūras galima išplėsti arba pakeisti, bet kitų – ne. Pirmiesiems tai priklauso nuo to, ar programuotojas dirba verslo aplinkoje, ar vienas, kurdamas programas. Pastaroji priklauso nuo to, ar programuotojas patenkintas esama architektūra, ar jis nori periodiškai atnaujinti architektūrą.
Dokumentacija ir bendruomenė yra svarbūs bet kuriai programai, tačiau kadangi kai kurią Java® kūrimo programinę įrangą kuria nedidelė komanda, turinti tik kelis sekėjus ir neturinti jokios dokumentacijos, tai gali tapti rimta problema. Sąvoka „dokumentacija“ reiškia vadovą, kuriame vartotojui nurodoma, kaip įdiegti programinės įrangos papildinius ir kodavimo generavimo funkcijas. Vietoj dokumentacijos ar jos papildymo aistringa internetinė bendruomenė gali padėti atsakyti į programuotojo klausimus. Jei nėra nei vieno, nei kito, programuotojas turės atsisėsti ir pabandyti išsiaiškinti sistemą be pagalbos, o tai gali lemti valandas ar dienas, kai produktyvumas bus mažas.
Funkcijos, įtrauktos į „Java®“ kūrimo programinę įrangą, gali turėti didelį skirtumą ir į jas reikia atsižvelgti. Kai kurių tipų kūrimo programinė įranga yra plati ir atlieka didžiąją kodavimo dalį, o kitos yra paprastos ir gali atlikti tik kelias kodavimo procedūras. Kartu su kodavimo generavimu programuotojas turi išsiaiškinti, ar programinė įranga yra tik veiksmų sistema, ar ją galima išplėsti.