Debugging in VSCode
Este guia trata de como configurar a depuração usando VSCode tanto para seu próprio projeto no Electron como para código nativo do Electron.
Depurando seu app Electron
Processo principal
1. Open an Electron project in VSCode.
$ git clone git@github.com:electron/electron-quick-start.git
$ code electron-quick-start
2. Adicione um arquivo .vscode/launch.json
com a seguinte configuração:
{
"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. Debugging
Set some breakpoints in main.js
, and start debugging in the Debug View. You should be able to hit the breakpoints.
Aqui está um projeto pré-configurado que você pode baixar e depurar diretamente no VSCode: https://github.com/octref/vscode-electron-debug/tree/master/electron-quick-start
Debugging the Electron codebase
If you want to build Electron from source and modify the native Electron codebase, this section will help you in testing your modifications.
For those unsure where to acquire this code or how to build it, Electron's Build Tools automates and explains most of this process. If you wish to manually set up the environment, you can instead use these build instructions.
Windows (C++)
1. Open an Electron project in VSCode.
$ git clone git@github.com:electron/electron-quick-start.git
$ code electron-quick-start
2. Adicione um arquivo .vscode/launch.json
com a seguinte configuração:
{
"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}",
},
},
]
}
Configuration Notes
cppvsdbg
requires the built-in C/C++ extension be enabled.${workspaceFolder}
is the full path to Chromium'ssrc
directory.your-executable-location
will be one of the following depending on a few items:Testing
: If you are using the default settings of Electron's Build-Tools or the default instructions when building from source.Release
: If you built a Release build rather than a Testing build.your-directory-name
: If you modified this during your build process from the default, this will be whatever you specified.
- The
args
array string"your-electron-project-path"
should be the absolute path to either the directory ormain.js
file of the Electron project you are using for testing. In this example, it should be your path toelectron-quick-start
.
3. Debugging
Set some breakpoints in the .cc files of your choosing in the native Electron C++ code, and start debugging in the Debug View.