OpenJDK verzió

0 votes
asked Feb 26, 2021 in Rendszermodellezés A00 by bogyo175 (25 points)  

Remo házi feladathoz kellene OpenJDK 11-es verzió, viszont nekem a (elméletben) legújabb 14.x verzióm van. Okozhat ez gondot a házi feladat kiértékelésénél?
Hasonló a kérdés az Eclipse verziójával is!
(Próbálkoztam vm-el, de a hardveres virtualizáció miatt, nem tudom elíndítani és a bios-t sem tudom megnyitni, hogy át tudjam állítani.)

1 Answer

+1 vote
answered Feb 26, 2021 by dkmisu (1,327 points)  
selected Feb 28, 2021 by dkmisu
 
Best answer

A kérdésre két részletben válaszolnék. Először is a kezdeném a verziók egymásrautaltságával.

Az Eclipse egy hatalmas szoftver, ami elsősorban a Java-s ökoszisztémában való fejlesztést támogatja, így maga is Java ban íródott (részben), és használja is. Egy ekkora méretű szoftvernél elengedhetetlenül rengeteg Java API hívás lesz használva, így tipikusan szorosabban kötődnek a futtatókörnyezetükhöz (strongly coupled). Ennek következtében igaz, hogy minden Eclipse verzióra megmondják, hogy azt melyik Java verzióval lehet használni, mert régebbiekben (vagy esetleg újabbakban) bizonyos API-k, amiket az a verzió használ még (vagy már) nem léteznek. Ennek egy következménye, hogy emlékeim szerint (itt lehet, hogy tévedek), de az előírt Eclipse verzió (18.12) már a JDK 13-as verziójával sem működik.

Ugyanez a fenti probléma igaz a Yakindu-ra is. A Yakindu rendkívüli mértékben épít az Eclipse belső API-jaira, amik szintén változnak. Sajnos az előírt Yakindu verzió (3.5.2) már nem működik az Eclipse 20.12-es verziójában sem.

A Yakindu sajnos a tavalyi évben nyílt forráskódról zárt forráskódra váltott, és ezzel kapcsolatban megváltoztatta a licencelési gyakorlatát. Az új licencelést sajnos még nem tudtuk adaptálni, mert a tárgyat több mint 700-an hallgatják, így kénytelenek vagyunk egyenlőre a régebbi, korábbi licencelés alapján működő verziókat használni.

Természetesen érzékeljük a telepítéssel, és elsősorban a verzió együttműködéssel kapcsolatban fellépő problémákat, macerákat, ezért is nyújtunk egy részletes technikai segédletet, valamint kész virtuális gépet is, hogy ezekkel ne kelljen foglalkozni, mert nem ezek teszik ki a házi feladat lényegét.

A válaszom másik felében pedig az eltérő verziók használatáról beszélnék. Nem véletlenül írtuk le a segédletben, hogy a megadott verziókon kívül mással nem teszteltük a házi feladatot. Sajnos jelenleg 5-6 Java verzió, 5-6 Eclipse verzió, és 10-15 Yakindu verzió is szóba jöhet, amin esetleg meg lehet oldani a házi feladatot (és akkor még a különböző operációs rendszerekről nem is beszéltem). Ennyi különféle konfigurációt sajnos nincs erőforrásunk évről évre tesztelni, és elakadás esetén technikai segítséget nyújtani. A házi feladat valószínűleg megoldható más verziókkal is, de ebben az esetben könnyen léphetnek fel előre nem várt hibák.

Szerencsére a számítógépen több Java verzió is megfér egymás mellett, még ha ez azzal is jár, hogy esetenként állítani kell, hogy melyik szoftver melyik verziót használja. Ugyanez igaz az Eclipse verziókra is, így nem kéne gondot jelentsen ennek a régebbi szoftveres környezetnek az összeállítása. Amennyiben ez nem működik, lehet újabb Yakindu verziókkal próbálkozni, azonban itt semmiképpen nem javaslom a 4.x-es verziókat, mert ott komoly változások történtek. Ebben az esetben a 3.5-ös verziókkal való kísérletezést javaslom, amik időben minék közelebb esnek az előírt verzióhoz. Azonban ebben az esetben készülj egy hosszadalmasabb folyamatra, amíg megtalálod azt az Eclipse valamint Yakindu verziót, amik egyrészt együttműködnek és támogatják a JDK 14-es verzióját, másrészt a házi feladat projektje probléma nélkül működik rajtuk.

...