További beállítások Java komponensek hibakereséséhez

Normál esetben a fejlesztőnek általában nem kell a vizuális szerkesztő példányok által használt virtuális géppel foglalkoznia. A tapasztalt felhasználók azonban beállíthatják a munkaterületet úgy, hogy a virtuális gép System.out illetve System.err kimenetére küldött üzenetek a munkaterület .metadata könyvtárában található .log fájlba kerüljenek.

A Java komponenseket futtató virtuális gép nem egyezik meg azzal, amelyikben a munkaterület fut. A vizuális szerkesztő minden egyes példányához külön virtuális gépjön létre. A virtuális gépek osztályútvonala a Java projekt összeépítési útvonalának bejegyzéseit tartalmazza. Ha a Java összeépítési útvonal módosul, akkor a változások életbe léptetéséhez be kell zárni, majd újra kell indítani a megnyitott vizuális szerkesztő példányokat.

A munkaterület indításakor a felhasználó megadhatja a -DEBUG kapcsolót egy szöveges elérési útjával:

-DEBUG file:/c:/temp/options.txt

Ez a hibakeresési fájl, amelynek bejegyzéseit a vizuális szerkesztő beolvassa. Ha a fájl tartalmazza az alábbi sort, akkor a System.out vagy System.err folyamra küldött üzenetek a konzolon jelennek meg:

org.eclipse.jem.proxy/debug/vmtraceout=true

A vizuális szerkesztő által használt VM üzeneteinek konzolos megjelenítésén kívül hibakeresési üzemmódban is elindíthatja a virtuális gépet, és távoli hibakeresést hajthat végre. Ez a művelet azonban nincs optimalizálva, és a vizuális szerkesztő későbbi változataiban valószínűleg meg fog változni. Mindazonáltal a funkció dokumentált és rendelkezésre áll arra az esetre, ha szükség lenne a Java komponensek hibakeresésére tervezési időben. A távoli hibakereséshez két munkaterület szükséges: egy a Java komponensek, egy másik pedig a socket alapú távoli hibakeresés futtatásához. A második munkaterület lehet futhat ugyanazon, vagy egy másik gépen is. A vizuális szerkesztő virtuális gépének hibakereséséhez a -DEBUG kapcsolóval megadott fájlnak tartalmaznia kell az alábbi sort:

org.eclipse.jem.proxy/debug/debugvm=true

Amikor a vizuális szerkesztő elindít egy virtuális gépet, rákérdez, hogy kívánja-e hibakeresés módban indítani azt. Az üzenet egy párbeszédablakon jelenik meg, illetve ha a -DEBUG kapcsolóval megadott fájl tartalmazza az org.eclipse.jem.proxy/debug/ioconsole=true sort, akkor a System.out folyamra íródik.

Ha az üzenet a System.out folyamra kerül, akkor a vizuális szerkesztő egy 'Y' (igen) vagy egy 'N' (nem) bevitelét várja a System.in folyamon:

Kívánja hibakeresés módban indítani a távoli virtuális gépet (Projekt (Teszt)- HelloFrame.java)? (Nyomja meg a 'I' vagy a 'N' billentyűt):

Az előző párbeszédablakot a Teszt projekt HelloFrame.java osztályának megnyitásakor jeleníti meg a vizuális szerkesztő. Ha az Igen gombra kattint, vagy a konzolon megnyomja az I billentyűt majd az Entert, akkor a virtuális gép az -Xdebug kapcsolóval felfüggesztett módban indul egy socket kapcsolattal. A rendszer keres egy szabad portot, lefoglalja, majd közli a felhasználóval a számát.

Ha az üzenet a System.out folyamra íródott, akkor a választ a System.in folyamon kell megadni.

Csatlakoztassa a hibakeresőt a 7078-as portra. A hibakereső csatlakoztatása után nyomja meg az 'I' billentyűt. A program futása nem folytatódhat mindaddig, amíg a hibakeresőt megfelelően nem csatlakoztatja. Ha nem sikerül, akkor nyomja meg az 'N' billentyűt. Ez hibaüzenethez vezet ugyan, de alaposabb takarítást eredményez. Nyomja meg az 'I' vagy a 'N' billentyűt:

A következő lépés egy távoli hibakereső csatlakoztatása a 7078-as portra. A vizuális szerkesztőt futtató munkaterület példány a távoli hibakereső csatlakoztatása alatt felfüggesztésre kerül, ezért a hibakeresést egy másik alkalmazásból kell indítani. Ha ez a másik alkalmazás a munkaterület egy másik példánya, akkor a hibakeresés indításához válassza ki a Hibakeresés > Hibakeresés menüpontot, és hozzon létre egy új Távoli Java alkalmazás konfigurációt.

Adja meg az stdout kimenetre írt portszámot, esetünkben a 7078 értéket. Ha a hibakereső másik gépen található, akkor a Hoszt mezőben adja meg a hibakeresni kívánt munkaterületet futtató számítógép IP címét. A távoli hibakeresés elindításához kattintson a Hibakeresés gombra, majd a hibakeresés alatt álló munkaterülethez tartozó stdin konzolon nyomja meg az I billentyűt.

A vizuális szerkesztő példányok által használt virtuális gép hibakeresésén kívül a projekt a hibakeresését is meg kell erősítenie:

Kívánja hibakeresés módban indítani a távoli virtuális gépet (Projekt (Teszt)- Beaninfo)? (Nyomja meg a 'I' vagy a 'N' billentyűt):

Ez a belső elemzést végző illetve a java.beans.Introspector-t futtató virtuális gépre vonatkozik, ami úgy különböztethető a vizuális szerkesztő virtuális gépétől, hogy ez nem határozza meg egy adott Java forrásfájl nevét. Ez a virtuális gép akkor indul, amikor első ízben van szükség egy Java komponens BeanInfo információira a projekten belül, és mindaddig aktív marad, amíg a felhasználó a projektet be nem zárja. A projekt hibakeresésével keresztüllépkedhet és kielemezheti a BeanInfo osztályokban található, a Java komponensek belső elemzése során lefutó kódot. Egy Java komponensosztály belső elemzése a komponens projekten belüli első használatakor fut le. A teljesítmény javítása érdekében az eredmény a gyorsítótárba kerül. Ha bármikor szükség lenne a BeanInfo információkat tartalmazó gyorsítótár törlésére, akkor zárja be majd nyissa meg újra a projektet az előugró menüjének bezárás illetve megnyitás menüpontjával.

Kapcsolódó fogalmak
Java komponens kivételek
Kapcsolódó feladatok
Vizuális osztály futtatása Java komponensként vagy alkalmazásként
Java komponens vagy Java alkalmazás futási beállításainak konfigurálása
Vizuális Java komponens vagy alkalmazás hibakeresése
Kisalkalmazások tesztelése és telepítése

(C) Copyright IBM Corporation 1999, 2004. Minden jog fenntartva.