Ezt a cikket utoljára 2020 januárjában frissítették
Egy ideális világban a hibák soha nem jutnának el a gyártásba. De a szoftverhibák elkerülhetetlen részei a fejlesztők életének. A Java hibakereső eszközök azért léteznek, hogy segítsenek gyorsabban megoldani a hibákat, így tovább folytathatjuk azt, amihez a legjobban értünk.
A Java hibakereső eszközök listája segít gyorsan felmérni a lehetőségeket, hogy megtaláljuk a legjobbat a feladathoz.
A Java hibák, kivételek, hibák & összeomlások könnyedén megtalálhatók és javíthatók. A Raygun minden összeomlást rögzít és valós időben jelent
Raygun Crash Reporting
A hibakeresés egyik legnehezebb dolga, hogy nem mindig tudja, milyen hibákat tapasztalnak a felhasználók. A Raygun Error Monitoring mindent tartalmaz, amire szüksége van ahhoz, hogy felfedezze a hibákat, hibákat és összeomlásokat, amelyek a termelésben és azon túl is előfordulnak.
A Raygun4Java alapértelmezés szerint lehetővé teszi a kivételek küldését az asztali és konzolos Java és Scala alkalmazásokból. Az összes kivételt elküldheti a Raygun műszerfalára, így minden egyes hibáról részletes diagnózist láthat, beleértve a teljes stack traces-t, a metódusok, függvények és osztályok nevével kapcsolatos adatokat és egyebeket.
A telepítés és a konfiguráció nem vesz igénybe néhány percnél többet. A Raygun bármilyen objektumot képes feldolgozni, amely a Throwable
osztályból öröklődik. Az olyan fejlett funkciók, mint a Breadcrumbs, a szűrők és az egyéni címkék szintén megkönnyítik a hibakeresést.
Eclipse
Az Eclipse egy népszerű nyílt forráskódú IDE, amelyet Java fejlesztésre használnak, de más nyelvekhez, például PHP, Python, Ruby és C# nyelvekhez is vannak pluginjai. Az Eclipse platform fejlett hibakeresési funkciókkal rendelkezik, amelyek segítségével végrehajtás közben is ellenőrizheti a kódot, így egy jól felszerelt eszköz. Nagy előnye, hogy az Eclipse munkafolyamat kényelmes, mivel ugyanazt a platformot használhatja fejlesztésre és hibakeresésre is.
Az Eclipse egyik legjobb funkciója a hibakeresési perspektíva, amely egymás mellett mutatja a releváns hibakeresési információkat, például a változókat, töréspontokat, szálakat és híváshalmokat.
Az Eclipse segítségével felfüggeszthetjük és folytathatjuk a szálakat, végiglépkedhetünk a program végrehajtásán, megvizsgálhatjuk az értékeket és kiértékelhetjük a kifejezéseket.
NetBeans
ANetBeans egy másik ingyenes és nyílt forráskódú IDE. Az Eclipse-hez hasonlóan a hibakeresési funkciók be vannak építve a platformba, így a hibakeresési eszközhöz csak az IDE-t kell letöltenie.
ANetBeans különböző letöltési csomagokban kapható; Java esetén a Java SE vagy a Java EE kiadásra lesz szüksége. Ez utóbbi támogatja a HTML5-öt, a JavaScriptet, valamint a GlassFish és Tomcat szervereket is, így komolyabb fejlesztési munkákhoz jobb választás.
A NetBeans Debugger sok hasonló funkcióval rendelkezik, mint az Eclipse. Valójában mindkettő kiváló hibakereső eszköz a forráskód vizsgálatára és az olyan problémák azonosítására, mint a memóriaszivárgás és az egyidejűségi problémák. A NetBeans lehetővé teszi töréspontok és feltételes töréspontok beállítását, a kódon való átlépést, a szálváltást és a végrehajtás valós idejű megfigyelését.
A NetBeans a praktikus Visual Debugger funkciót is biztosítja, így a Java és JavaFX GUI alkalmazások vizuális elemeinek hibakeresését is elvégezheti. A Visual Debugger segítségével a GUI-akciókhoz figyelőket adhat hozzá, megtekintheti a komponensek tulajdonságait és hierarchiáját, valamint megkeresheti a forráskódot.
Ha a NetBeans-t használja, hozzáférhet a beépített NetBeans Profiler eszközhöz is. A profiler segítségével ellenőrizheti a memóriahasználatot, a CPU-teljesítményt, a szálak állapotát és a Java-alkalmazás egyéb jellemzőit. Ezek a funkciók együttesen segítenek a sebesség és a memóriahasználat optimalizálásában, valamint a rezsiköltségek csökkentésében.
Mivel a NetBeans-t 2018 elején felvásárolta az Apache Software Foundation, a jövőben még több integrációra és bővített funkcióra számíthat – különösen mivel az Apache már számos Java-projektnek ad otthont a Maven építőeszköztől a Tomcat szerverig.
IntelliJ IDEA
Az Eclipse és a NetBeans mellett az IntelliJ IDEA a harmadik IDE, amelyet a Java-fejlesztők általában említenek, ha megkérdezik tőlük, melyik IDE-t használják. A JetBrains által fejlesztett IntelliJ IDEA nyílt forráskódú közösségi és fizetős kereskedelmi kiadással is rendelkezik. Elsősorban Java IDE, de más JVM-nyelvekkel, például Groovyval, Kotlinnal és Scalával is használható. A kereskedelmi kiadás számos JVM és nem JVM keretrendszert is támogat, például Spring, Java EE, Play, Grails, GWT és Vaadin. Még jobb, hogy mindkét kiadás támogatja az Android-fejlesztést – nagyszerű, ha több projektet futtat. A fent említett IDE debuggerekhez hasonlóan az IntelliJ IDEA is tartalmaz egy beépített Java debuggert, amely out-of-the-box működik.
Az IntelliJ IDEA rendelkezik az összes olyan standard hibakeresési funkcióval, amelyet egy kategóriájában legjobb hibakeresőtől elvárhat. Az IntelliJ IDEA lehetővé teszi, hogy:
- Töréspontok és figyelési pontok létrehozása és konfigurálása
- Kifejezések kiértékelése
- A hibakeresési munkamenet szüneteltetése és folytatása
- A felfüggesztett szálak vizsgálata
- A forráskód végigjárása
- Memóriahasználat elemzése
- … És még több
Az IntelliJ IDEA segítségével távolról is végezhet Java-alkalmazások hibakeresését.
Az intrainline hibakeresés az IntelliJ IDEA legérdekesebb és legegyedibb funkciója. Az inline hibakereső megjeleníti a változók értékeit a kódon belül, közvetlenül a sor mellett, ahol azokat használták. Amikor a változó értéke megváltozik, az inline hibakereső más színnel emeli ki azt. Az értékek ellenőrzéséhez nem kell a Debug-ablakba lépni, vagy egyesével az egyes változók fölé menni, mint az Eclipse és a NetBeans esetében.
Visual Studio Code
Nem kell mindig IDE-t használni a Java-alkalmazások hibakereséséhez. A Microsoft keresztplatformos forráskódszerkesztője, a Visual Studio Code a Java hibakeresést is lehetővé teszi a Debugger for Java bővítmény révén.
Ha egyébként is a Visual Studio Code-t használja kódszerkesztésre, és szüksége van egy könnyű és könnyen használható hibakeresési eszközre a Java-fejlesztési munkafolyamathoz, a Visual Studio Code remek választás. Bár nem rendelkezik annyi fejlett funkcióval, mint az IDE debuggerek, mindent tud, amire egy gyors hibakereséshez szüksége van.
A Visual Studio Code Java debuggere a Java Debug Serverre épül, amely egy másik Visual Studio Code-bővítményt, a Red Hat Language Support for Java nevű bővítményét bővíti.
A VS Code debugger lehetővé teszi, hogy:
- Lokális és távoli hibakeresést végezhet
- Feltételes töréspontok és naplózási pontok beállítása
- Lépkedés a forráskódban
- Változók vizsgálata és figyelése
- Hívások megtekintése. stackeket
- Multi szálak hibakeresése
- Kifejezések kiértékelése
- Hot code replacement használata
VS Code debugger kiterjesztése számos konfigurációs lehetőséggel rendelkezik, amelyeket a dokumentációban megnézhet.
A Java Debugger (jdb)
Ha nem tud (vagy nem akar) külső szoftvert használni a Java hibakereséshez, akkor a Java alkalmazások hibakeresése a parancssorból is lehetséges. A Java Debugger (jdb) egy egyszerű parancssori hibakereső, amelyet az Oracle biztosít. Ez a GNU Debugger (gdb) megfelelője a Java Virtual Machine számára. A Java Debugger benne van a Java SE Development Kitben, így ha a gépére telepítve van a JDK, semmi mást nem kell tennie. A hibakereső a jdb
paranccsal indítható, a parancsok listáját pedig a help
paranccsal érhetjük el.
A Java Debugger valójában a Java Platform Debugger Architecture (JDPA) demonstrációja. A JDPA három interfész gyűjteménye: JVM TI (Java Virtual Machine Tools Interface), JDWP (Java Debug Wire Protocol) és JDI (Java Debug Interface). A JDPA egy olyan hibakeresési architektúra, amely eszközöket biztosít a fejlesztőknek saját hibakereső alkalmazások létrehozásához – a jdb csak egy a JDPA felhasználási lehetőségei közül.
A jdb hibakeresővel mélyreható hibakeresési munkameneteket végezhet a parancssorban. A jdb debuggerrel a következőket teheti:
- Listázás, felfüggesztés, és folytassa a szálakat
- Kifejezések kiértékelése
- Minden objektuminformáció kinyomtatása
- Töréspontok beállítása
- Mezők figyelése
- Módszerhívások nyomon követése
- Lépcsőzés keresztül a kódon
- Megengedi és megakadályozza egy objektum szemétgyűjtését
A parancssori hibakereső bonyolultsága miatt nem a legjobb választás a mindennapi fejlesztői munkához. Mégis, van egy előnye – a hordozhatóság. Túl sok gond nélkül beállíthatjuk egy szerveren, mivel nem kell a szervert egy távoli IDE debuggerhez csatlakoztatni. Mindez a jdb-t ideális eszközzé teszi a gyors hibaelhárításhoz, ami fontos a termelési környezetben.
Melyik Java hibakereső eszköz a legjobb az Ön projektjéhez?
A Java hibakeresés nem kell, hogy olyan nagy kihívás legyen. Az alábbi hibakereső eszközök bármelyikének használatával a hibakeresési folyamat sokkal gyorsabbá válik. Minden felhasználási eset más és más, de a lehetőségek értékelése segít kiválasztani a megfelelő eszközt a projekthez.
A Java hibakeresése könnyebb, ha tudja, hol van a hiba! A Raygun Crash Reporting for Java segít a fejlesztőknek a problémák gyorsabb és pontosabb észlelésében, diagnosztizálásában és megoldásában. Vegye igénybe a 14 napos ingyenes próbaverziót.