Gyakran ismétlődő kérdések a JDT-ről

Használhatok a beépített fordítón (például javac) kívül más fordítót is a munkaterülettel?

Nem. A JDT számos bonyolult szolgáltatást nyújt, köztük teljesen automatikus növekményes újrafordítást, kódrészlet kiértékelést, kódsegédet, típushierarchiákat és gyors kódcserét. Ezek az összetevők a munkaterület Java fordítójában (a JDT növekményes projekt összeépítőjének egy integrált részében) meglevő különleges támogatást igénylik, ami viszont nincs meg a szabványos Java fordítókban.

Honnét jönnek a Java csomagok?

Egy projekt csak fájlokat és mappákat projekt. A Java csomag fogalma a Java projekt osztályútvonalában kerül elő (a felhasználói felületen a Csomagböngésző az osztályútvonal meghatározta módon jeleníti meg a csomagokat). Tipp: Ha a csomagszerkezet nem egyezik a várttal, akkor ellenőrizze az osztályútvonalat. A Java keresési infrastruktúra csak az osztályútvonalban szereplő Java elemek deklarációit és hivatkozásait találja meg.

Mikor használjak belső, és mikor külső JAR függvénytárfájlt?

A munkaterület egyes projektjeiben belső erőforrás található, ezeket a munkaterület kezeli. Más erőforrásokhoz hasonlóan ezek változatait is kezelheti a munkaterület. Egy külső erőforrás nem része a munkaterületnek, így csak hivatkozásokon keresztül lehet használni. Például egy JRE gyakran külső és nagyon nagy, nincs szükség arra, hogy társítsa a VCM rendszerrel.

Mikor használjak forrásmappákat Java projektben?

Minden Java projekt az osztályútvonal forrástípus bejegyzésein keresztül keresi meg a forrásfájljait. Használja a forrásmappákat egy nagy projekt csomagjainak ésszerű csoportokba rendezésére, vagy hogy a forráskódot elszigetelje a projekt többi fájljától. Akkor is használhat forrásmappákat, ha olyan fájljai vannak (például dokumentáció), amelyekre nincs szükség az összeépítési útvonalban.

Mik azok a forráscsatolások, hogyan adhatom meg őket?

A függvénytárak bináris osztályfájlokat (és esetleg egyéb erőforrásokat) tartalmazó JAR fájlokként tárolódnak. Ezek a bináris osztályfájlok nyújtják az információkat a csomagok, osztályok, metódusok és mezők aláírásához. Ezek az információk elegendőek fordításhoz vagy futtatáshoz, de korántsem tartalmaznak annyi információt, mint a forráskód. A bináris függvénytárak könnyebb böngészéséhez és hibakereséséhez van egy mechanizmus, ami társítja a megfelelő JAR (vagy ZIP) fájlt a bináris JAR fájlhoz.

Miért szerepel minden erőforrás kétszer is a kimeneti mappában (például a bin könyvtárban)?

Ha a Java projekt forrásmappákat használ, akkor a projekt forrásfájljainak fordítása közben a Java fordító a nem-Java erőforrásokat bemásolja a kimeneti mappába is, így elérhetőek lesznek a futó program osztályútvonalában. Egyes erőforrások kimeneti mappába történő másolását megakadályozhatja a fordító beállításainál, az erőforrásszűrőben: Ablak > Beállítások > Java > Fordító > Összeépítés

Hogyan akadályozhatom meg a dokumentáció fájlok átmásolását a projekt kimeneti mappájába?

Használjon forrásmappákat, és az átmásolástól megóvni kívánt erőforrásokat helyezze egy külön mappába, ami nem szerepel az osztályútvonalban. Beállíthat egy erőforrásszűrőt is (például a *.doc kiterjesztésű fájlokra) a fordító beállításainál: Ablak > Beállítások > Java > Fordító > Összeépítés

Hogyan hozzak létre alapértelmezett csomagot?

Nem kell létrehoznia. A forrásmappa vagy a projekt főmappájában levő fájlok az alapcsomagban vannak. Valójában minden forrásmappa képes arra, hogy az alapértelmezett csomag egy részét tartalmazza.

Mi az átdolgozás?

Az átdolgozás viselkedésmegőrző programátalakítás. A JDT számos olyan átalakítást támogat, melyek szerepelnek Martin Fowler Refactoring: Improving the Design of Existing Code című könyvében (Addison Wesley, 1999).

Mikor kell a kódkijelölés/kódfeloldás műveletet használnom?

Ha a fordító segítségével keres meg egy adott forrástartománynak megfelelő Java elemet.

A Java programinformációkat (például típushierarchiákat, deklarációkat, hivatkozásokat) a Java összeépítő állítja elő? Akkor is frissülnek, ha az automatikus összeépítés ki van kapcsolva?

A Java program információk függetlenek a Java összeépítőtől. Erőforrásmódosítás vagy Java műveletek végrehajtásakor automatikusan frissülnek. Különösen a Java eszközök nyújtotta funkciók (típushierarchiák, kódsegéd, keresés) fognak továbbra is pontosan végrehajtódni az automatikus összeépítés kikapcsolása után; például az összeépítők kikapcsolását igénylő komoly átdolgozások során is használhatja a kódsegédet, ami a legfrissebb (még összeépítés előtti) változtatásokat mutatja. Az indításon (azaz futtatáson és hibakeresésen) kívül az egyetlen funkció, amihez szükség van a Java összeépítőre, az a kódrészletek kiértékelése.

A munkaterület újbóli megnyitását követően a Java forrásfájl módosítása után az első összeépítés sok időbe telik. Miért van ez így?

A Java növekményes projektösszeépítő a munkaterület bezárásakor egy fájlba menti el a belső állapotát. A projekt megnyitása utáni első összeépítésnél a Java növekményes összeépítő visszaállítja ezt a belső állapotot. Ha ez a fájl nagy, akkor az összeépítés késleltetése szokatlanul hosszú.

Nem találom az osztály típushierarchiáját. Mit tegyek?

Ellenőrizze, hogy helyesen állította-e be az összeépítési osztályútvonalat. Java fejlesztésnél fontos feladat a megfelelő összeépítési osztályútvonal beállítása. A helyes összeépítési útvonal nélkül nem tudja lefordítani a kódot. A Java elemek típushierarchiáját sem keresheti vagy nézheti meg.

Hogyan kapcsolhatom ki az "automatikus fordítást" és hogyan végzem el én magam, amikor én akarom?

Szüntesse meg az Automatikus összeépítés jelölőnégyzet kiválasztását az Opens the Workspace preference page Általános > Munkaterület beállításoldalon. Ha összeépítést kíván végezni, nyomja meg a Ctrl+B billentyűket, vagy válassza a menüsor Projekt > Összes összeépítése menüpontját.

Tipp: ha kikapcsolja az "automatikus fordítás" lehetőséget, és kézzel végzi az összeépítést, akkor érdemes lehet kiválasztani az Automatikus mentés összeépítés előtt jelölőnégyzetet az Opens the Workspace preference page Általános > Munkaterület beállításoldalon.

Amikor metódust vagy mezőt jelölök ki a Vázlat nézetben, csak az elem forrása jelenik meg a szerkesztőben. Mit tegyek, hogy az egész fájl forrását lássam?

A Csak a kijelölt elem forrásának megjelenítése eszköztár gomb ne legyen benyomva.

Beágyazhatok forrásmappákat?

Igen, kivételszűrőkkel létrehozhat beágyazott forrásmappákat.

Lehet külön kimeneti mappa minden forrásmappához?

Igen, válassza ki a Kimeneti mappák engedélyezése forrásmappákhoz jelölőnégyzetet a projekt Java Összeépítési útvonal > Forrás beállításoldalán.

Lehet a munkaterületen kívül levő kimeneti vagy forrásmappám?

Igen, létrehozhat egy összekötő mappát, ami a kívánt helyre mutat, és a hivatkozott mappát használhatja a Java projekt forrás- vagy kimeneti mappájának.

Kapcsolódó fogalmak

Java fejlesztőeszközök (JDT)

Kapcsolódó leírások

Java összeépítési útvonal oldal
JDT szószedet