A hatékony hibakeresés és a kódminőség elválaszthatatlan fogalmak a szoftverfejlesztésben. A Visual Studio (VS) Code hibakeresési funkcióit főként a launch.json fájl vezérli. Ez a fájl lehetővé teszi a fejlesztők számára, hogy elképzelésüknek megfelelően konfigurálják és kezeljék hibakeresési beállításaikat.
Ez a cikk végigvezeti Önt a launch.json fájl megnyitásán és kezelésén az optimális hibakeresés érdekében.
A launch.json megnyitása a Visual Studio Code alkalmazásban
A VS Code hibakeresési beállításainak konfigurálásához és kezeléséhez hozzá kell férnie a launch.json fájlhoz. Ez a fájl döntő szerepet játszik a hibakeresés testreszabásában.
- Nyissa meg a Visual Studio Code-ot.
- Nyomja meg a Ctrl + Shift + P billentyűket a Parancspaletta megnyitásához.
- Írja be az „Open launch.json” parancsot a parancspalettába, és nyomja meg az „Enter” gombot. Ezzel meg kell nyitnia a launch.json fájlt.
- Ha a launch.json fájl nem nyílik meg, ellenőrizze, hogy a „.vscode” mappa létezik-e a projekt gyökérmappájában.
- Ha nem létezik, hozzon létre egy új mappát „.vscode” néven a Felhasználói mappán belül.
- Hozzon létre egy új „launch.json” fájlt, és helyezze el ebbe a mappába.
A launch.json fájl az engedélyezése után készen áll a konfigurálásra.
A Launch.json szerkezet áttekintése
A launch.json megjeleníti a „verzió” és a „konfigurációk” részt. A „konfigurációk” szakasz különböző hibakeresési beállításokat tartalmazó tömb, amelyet a hibakeresési séma konfigurálásához használhat.
A „konfigurációk” tömb minden egyes objektuma egy hibakeresési forgatókönyvet képvisel. Ezek az objektumok olyan tulajdonságokkal rendelkeznek, amelyek meghatározzák a hibakeresési környezetet, például a nyelv, a program és a hibakereső beállításait.
Néhány gyakori tulajdonság, amellyel a launch.json konfigurációkban találkozhat:
- „név” – Olvasóbarát név a konfigurációhoz, amely azonosítja azt a legördülő menüben.
- „type” – Megadja a hibakereső típusát (például „csomópont”, „python” vagy „cppvsdbg”).
- „request” – Meghatározza a kérés típusát: „launch” (új példány indításához) vagy „csatolás” (a hibakereső csatolása egy meglévő folyamathoz).
- „program” – a hibakeresni kívánt fájl elérési útja.
- „args” – A programnak a hibakeresés során átadandó parancssori argumentumok tömbje.
- „preLaunchTask” – A hibakereső elindítása előtt futtatandó feladat.
A launch.json fájlszerkezet megértése lehetővé teszi a hibakeresési környezet testreszabása közben, hogy mely beállításokat módosítsa, és melyeket hagyjon békén.
Indítási beállítások konfigurálása különböző nyelvekhez
Az indítási beállítások konfigurálásának lépései a nyelvtől függően kissé eltérhetnek. Íme néhány népszerű nyelv lépései.
JavaScript és TypeScript
- Hozzon létre egy új launch.json fájlt, és konfigurálja a „type” tulajdonságot „node”-ként JavaScript esetén vagy „pwa-node”-ként TypeScript esetén.
- Állítsa a „request” tulajdonságot „launch” vagy „Attach” értékre.
- A belépési pont fájlt a „program” tulajdonsággal kell megadnia.
Piton
- Telepítse a Python értelmezőt és a Visual Studio Code bővítményét.
- Állítsa a „type” tulajdonságot „python” értékre egy új launch.json fájlban.
- Konfigurálja a „request” tulajdonságot „launch” vagy „attach” értékre.
- Adja meg a futtatni kívánt Python-fájlt a „program” tulajdonság használatával.
- Előfordulhat, hogy a „pythonPath” tulajdonságot is be kell állítania a Python értelmező elérési útjára, ha az nem az alapértelmezett helyen van.
C# és .NET Core
- Telepítse a Visual Studio Code C# kiterjesztését.
- Az új launch.json fájlban állítsa a „type” tulajdonságot „coreclr” értékre .NET Core esetén vagy „clr” értékre .NET-keretrendszer esetén.
- Konfigurálja a „request” tulajdonságot „launch” vagy „attach” értékre.
- Adja meg a belépési pont fájlt a „program” tulajdonság segítségével.
- Ha szükséges, állítsa be a „cwd” tulajdonságot az aktuális projekt munkakönyvtárába.
Jáva
- Telepítse a Java Extension Pack csomagot.
- Hozzon létre egy új launch.json fájlt, és állítsa a „type” tulajdonságot „java” értékre.
- Konfigurálja a „request” tulajdonságot „launch” vagy „attach” értékre.
- Adja meg a fő osztályt a „mainClass” tulajdonsággal.
- Állítsa be a „projectName” tulajdonságot a Java projekt nevére.
- Állítsa be a „classpath” tulajdonságot, hogy tartalmazza a Java-fejlesztés során használt Java-könyvtárakat.
Hibakeresési konfigurációs receptek
A következő szakasz különféle hibakeresési konfigurációs recepteket ismertet.
Hibakereső csatolása futó folyamathoz
A hibakereső csatlakoztatása egy futó folyamathoz:
- Állítsa a „request” tulajdonságot „csatolás” értékre.
- Válassza ki a folyamatazonosítót vagy a szűrőt a hibakeresendő folyamat megkereséséhez.
Távoli alkalmazások hibakeresése
Távoli alkalmazások hibakereséséhez:
- Használjon „távoli” típust.
- A kapcsolat létrehozásához adja meg a gazdagép címét, portját és esetleg hitelesítési adatait.
Hibakeresési egységtesztek és tesztcsomagok
Az egységtesztek és tesztcsomagok hibakeresésekor:
- Az egységtesztek és tesztcsomagok hibakereséséhez használjon olyan konfigurációt, amely tartalmazza a teszt keretrendszert és a beállításokat.
- Adja meg a tesztcsomagot vagy az egyes tesztfájlokat a „program” vagy az „args” tulajdonságban az egyes tesztek célzásához.
Környezeti változók átadása
A launch.json fájl „env” tulajdonsága környezeti változókat adhat át az alkalmazásnak a hibakeresés során. Ez a tulajdonság egy olyan objektum, amely kulcs-érték párokat tartalmaz a beállítani kívánt környezeti változókhoz.
Speciális hibakeresés
Fedezzen fel néhány fejlett hibakeresési technikát azoknak a felhasználóknak, akik egy kicsit több energiát szeretnének kicsikarni a hibakereső fájlokból.
Feltételes töréspontok és naplópontok
A feltételes töréspontok és naplózási pontok javítják a hibakeresést azáltal, hogy csak meghatározott feltételek mellett szüneteltetik vagy naplózzák az üzeneteket. Használatuk:
- Kattintson a jobb gombbal arra a sorszámra, ahol töréspontot vagy naplózási pontot szeretne beállítani.
- Válassza a „Feltételes töréspont hozzáadása” vagy a „Naplópont hozzáadása” lehetőséget.
- Adja meg a feltételt vagy üzenetet a művelet elindításához.
Forrástérképek
A forrásleképezések lehetővé teszik az átalakított vagy kicsinyített kód hibakeresését.
- A forrástérképek használatához állítsa a „sourceMap” tulajdonságot „true” értékre a launch.json konfigurációban.
- Győződjön meg arról, hogy az összeállítási folyamat forrástérképeket és átalakított kódot generál.
Külső hibakeresők integrálása
Ha kívánja, külső hibakeresőket és eszközöket, például gdb-t vagy lldb-t integrálhat a VS Code-ba.
- Telepítse a választott hibakereső bővítményt.
- Konfigurálja a hibakereső beállításait a launch.json fájlban.
Többszálú alkalmazások hibakeresése
Többszálú alkalmazások hibakeresése során szabályozhatja az egyes szálak végrehajtását.
- A hibakeresési munkamenet során a szálak kezeléséhez használja a Hibakeresés oldalsáv „szálak” nézetét.
- Az egyes szálak kódvégrehajtását külön-külön szüneteltetheti, folytathatja vagy végiglépheti.
Többcélú hibakeresés
Az összetett indítási konfigurációk lehetővé teszik több cél egyidejű hibakeresését. Ha szeretné kihasználni ezt a funkciót, adjon hozzá egy „összetevők” tömböt konfigurációs nevekkel a csoportosításhoz. Futtassa őket az összetett konfiguráció nevének kiválasztásával a Hibakeresés legördülő menüből.
Konfiguráljon több indítási konfigurációt, amelyek különböző szolgáltatásokat, funkciókat vagy végpontokat céloznak meg a mikroszolgáltatások és kiszolgáló nélküli alkalmazások hibakereséséhez. Használjon összetett indítási konfigurációkat a célok együttes futtatásához.
Többgyökerű munkaterületek esetén hozzon létre külön launch.json fájlokat minden mappához. Konfigurálja az indítási beállításokat minden gyökérmappához külön-külön, a projektek külön-külön vagy egyidejű hibakereséséhez összetettek használatával.
Gyakori launch.json problémák hibaelhárítása
Időnként a hibakeresés hajlamos a saját hibakészletére. Nézzünk meg néhány gyakori problémát és azok elhárítását.
Sémaérvényesítési hibák
Sémaérvényesítési hibák akkor fordulnak elő, ha egy launch.json fájl érvénytelen tulajdonságokkal vagy értékekkel rendelkezik. A sémahibák javítása:
- Tekintse át a Problémák panel hibaüzeneteit.
- Frissítse a launch.json fájlt a hibaüzenetben szereplő információk szerint.
Hibakeresési hibák
A helytelen indítási beállítások hibakeresési hibákat okozhatnak.
- Ellenőrizze az indítási konfigurációkat, hogy nem megfelelő-e a fájl elérési útja.
- Ellenőrizze a hiányzó vagy hibás hibakereső- vagy kéréstípusokat.
- Szükség szerint frissítse a beállításokat.
Indítási konfigurációs problémák diagnosztizálása
Az indítási konfigurációkkal kapcsolatos problémák diagnosztizálása:
- Engedélyezze a diagnosztikai naplózást a „trace” tulajdonság „verbose” értékre állításával.
- Tekintse át a létrehozott naplókat a Debug Console-ban a problémák azonosításához és kijavításához.
Tippek a launch.json fájlhoz
Az alábbi tippekkel optimálisan használja a launch.json fájlt:
- Használjon értelmes neveket az indítási konfigurációkhoz, hogy könnyen azonosíthatók legyenek. Ez a gyakorlat segít a megfelelő konfiguráció gyors megtalálásában, ha több hibakeresési forgatókönyvvel dolgozik.
- Ossza meg az indítási konfigurációkat csapatával az launch.json fájl felvételével a projekt verziókezelő rendszerébe. Minden csapattag hozzáférhet ugyanazokhoz a hibakeresési konfigurációkhoz és beállításokhoz.
- Az olyan verzióvezérlő rendszerek, mint a Git, nyomon követhetik a launch.json fájl változásait. A verzióvezérléssel visszatérhet a korábbi konfigurációkhoz, és együttműködhet a csapat többi tagjával, ha megosztja velük az ajánlott beállításokat.
- Telepítsen bizonyos nyelveket támogató bővítményeket, hibakeresőket vagy eszközöket, amelyek megfelelnek a projekt igényeinek. Állítsa be a launch.json fájlt úgy, hogy a hibakeresési munkamenetek során használja ezeket a kiterjesztéseket és azok funkcióit.
Indítsa el a Debugging alkalmazást
A launch.json erejének kihasználásával a hibakeresési élményt a kódolási stílusához legjobban igazíthatja. Ez javítja a kód minőségét és teljesítményét.
Milyen gyakran kell konfigurálnia az indítási beállításokat? Van valami konfigurációs tipped? Kérjük, ossza meg tapasztalatait az alábbi megjegyzés részben.