AppCode 2018.3 Help


A subprocess can be entered in the course of debugging.

AppCode comes bundled with an LLDB debugger.

Start a debugging session

  1. Configure the Run/Debug Configurations profile (Run | Edit Configurations). For more information, see Configuring Debugger Options.

  2. 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.

  3. Define a run/debug configuration for the application to be debugged.

  4. Create a breakpoint .

  5. Click the Debug icon (icons actions startDebugger dark svg). Read more about debugging sessions in Starting the Debugger Session.

After you've started a debug session, the icons actions startDebugger svg icon that marks the Debug tool window toggles to debug active to indicate that the debug process is active.


After you have configured a run configuration for your project, you can launch it in debug mode by pressing ⌃D.

In the Debug tool window you can see the list of frames and threads with their states, variables and watches. When you select a frame, you see the variables corresponding to the selected frame.


Customize breakpoint settings

To customize breakpoint settings, press ⇧⌘F8. To see all breakpoints in the project (with additional settings), click More or press the same shortcut ⇧⌘F8 again.


If you have any instance marked with a label, you can use it in the condition expression as well:

breakpointProperties label

Do not suspend code execution

Use action breakpoints to evaluate a variable at a particular line of code without suspending code execution. To create an action breakpoint, click the gutter while pressing Shift.

action breakpoint

Create a temporary breakpoint

To create a breakpoint that stops only once, click the left gutter while holding Shift + Alt. For more information, refer to the section Breakpoints.

temporary breakpoint

Disable breakpoints

To disable a breakpoint, click the breakpoint while pressing Alt. Refer to the section Breakpoints for details.

quick disable breakpoints

Debugger session

Drop frame

In case you want to “go back in time” while debugging you can do it via Drop Frame action. This is a great help if you mistakenly stepped too far. This will not revert the global state of your application but at least will get you back by stack of frames.

drop frame

The icon icons actions popFrame svg is described in the Debug tool window reference.

Run to cursor

To stop code execution at the cursor position without adding another breakpoint, click the Run to cursor icon(icons actions runToCursor svg) or press ⌥F9.

run to cursor

The icon icons actions runToCursor svg is described in the toolbar reference of the Debug tool window.

Mark object

To add a colored label to an instance, press F3 or the context menu in the Variables and Watches tabs.

mark object

The next time this instance appears in Watches, Variables or Evaluate expression, you will see the label:

mark object1

Evaluate expression

While in debug mode, you can evaluate any expression by pressing ⌥F8.

evaluate expression1

This tool provides code completion just as in the editor so it’s very easy to enter any expression:

evaluate expression2

If you have any instances marked with labels, code completion will offer you its names so you can evaluate them:

evaluate expression3

Refer to the section Evaluating Expressions for details.


Configuring debugger settings

To change debugger settings, click File | Settings. In the Settings menu, click Build, Execution, Deployment | Debugger.

Useful debugger shortcuts



Toggle breakpoint⌘F8
Resume program⌥⌘R
Step overF8
Step intoF7


View breakpoint details/all breakpoints⇧⌘F8

Debug code at caret

⌃D (within the main method), or ⌃⌥D

Last modified: 28 March 2019

See Also