Debugging
Overview
This section describes the procedures that are common for various types of applications. For details on debugging applications in the supported frameworks, refer to Language and Framework - Specific Guidelines.
IntelliJ IDEA provides a full range of facilities for debugging your source code:
- Breakpoints in Java.
- Breakpoints in JavaScript.
- Multiple simultaneous debugging sessions.
- Customizable breakpoint properties: conditions, pass count, etc.
- Frames, variables, and watches views in the debugger UI.
- Runtime evaluation of expressions.
If you want to see the list of all currently debugging applications, select Viewing Running Processes section for details.
from the main menu. Refer to theGeneral debugging steps
- Configure the dependencies and libraries to be passed to the compiler and generate the debugging information.
- Configure common debugger behavior, including stepping speed, class reloading policy, or scrolling of the editor canvas.
- Configure the debugger engine.
- To debug CoffeeScript, TypeScript, and Dart code, you need to generate a source map for it. This will set the correspondence between lines in your original code and in the generated JavaScript code. If no source map is generated, your breakpoints will not be recognized and processed correctly.
- Define a run/debug configuration for the application to be debugged.
- Create breakpoints in the source code.
- Launch a debugging session.
- Pause or resume the debugging session as required.
- During the debugger session, step through the breakpoints, evaluate expressions, change values on-the-fly examine suspended program, explore frames, set watches, reload classes, and customize views.
After you've started a debug session, the icon that marks the Debug tool window toggles to
to indicate that the debug process is active.
Note that IntelliJ IDEA lets you debug decompiled code in the same way as your normal source files, provided that it contains line number attributes.