Débogage dans VSCode
Ce guide explique comment configurer le débogage de VSCode pour votre propre projet Electron ainsi que pour la base de code natif d'Electron.
Débogage de votre application Electron
Processus principal
1. Ouvrez un projet Electron dans VSCode.
$ git clone git@github.com:electron/electron-quick-start.git
$ code electron-quick-start
2. Ajoutez un fichier .vscode/launch.json
avec la configuration suivante :
{
"version": "0.2.0",
"configurations": [
{
"name": "Debug Main Process",
"type": "node",
"request": "launch",
"cwd": "${workspaceFolder}",
"runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
"windows": {
"runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron.cmd"
},
"args" : ["."],
"outputCapture": "std"
}
]
}
3. Débogage
Définissez des points d’arrêt dans main.js
et démarrez le débogage dans la Vue de Debug. Vous devriez être en mesure maintenant d’atteindre vos points d’arrêt.
Voici un projet pré-configuré que vous pouvez télécharger et déboguer directement dans VSCode : https://github.com/octref/vscode-electron-debug/tree/master/electron-quick-start
Débogage du code de base d'Electron
Cette section vous aidera à tester vos modifications si vous souhaitez générer Electron à partir des sources et modifier le code natif de base d'Electron. .
Si vous ne savez pas comment vous approprier ce code ou comment le générer, Electron's Build Tools automatise et explique la plupart de ce processus. Si vous souhaitez configurer manuellement l’environnement, vous pouvez utiliser ces instructions de génération.
Windows (C++)
1. Ouvrez un projet Electron dans VSCode.
$ git clone git@github.com:electron/electron-quick-start.git
$ code electron-quick-start
2. Ajoutez un fichier .vscode/launch.json
avec la configuration suivante :
{
"version": "0.2.0",
"configurations": [
{
"name": "(Windows) Launch",
"type": "cppvsdbg",
"request": "launch",
"program": "${workspaceFolder}\\out\\your-executable-location\\electron.exe",
"args": ["your-electron-project-path"],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [
{"name": "ELECTRON_ENABLE_LOGGING", "value": "true"},
{"name": "ELECTRON_ENABLE_STACK_DUMPING", "value": "true"},
{"name": "ELECTRON_RUN_AS_NODE", "value": ""},
],
"externalConsole": false,
"sourceFileMap": {
"o:\\": "${workspaceFolder}",
},
},
]
}
Notes sur la configuration
cppvsdbg
nécessite que l'extension intégrée C/C++ soit activée.${workspaceFolder}
est le chemin complet vers le répertoiresrc
de Chromium.your-executable-location
sera l'un des éléments suivants selon le cas:Testing
: Si vous utilisez les paramètres par défaut de Electron's Build-Tools ou les instructions par défaut lors de la compilation à partir du source.Release
: Si vous avez générerez une version Release plutôt qu’une version Testing.your-directory-name
: Si vous avez modifié cela au cours de votre processus de génération par rapport à la valeur par défaut, ce sera donc ce que vous avez spécifié.
- La chaîne
"your-electron-project-path"
du tableauargs
doit être un chemin absolu pointant soit vers le fichiermain.js
du projet Electron utilisé pour les test, soit vers son répertoire. Dans cet exemple, il s’agira de votre chemin d’accès àelectron-quick-start
.
3. Débogage
Définissez d'abord quelques points d'arrêt dans le code natif Electron C++ et commencez à déboguer dans la Vue débogage.