RubyMine 2016.2 Help

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.

RubyMine provides a full range of facilities for debugging your source code:

If you want to see a list of all currently debugging applications, select Run | Show Running List from the main menu. Refer to the section Viewing Running Processes for details.

General debugging steps

  1. Configure the debugger options.
  2. To debug CoffeeScript, TypeScript, and Dart code, you need source maps generated in addition to the JavaScript code.

    Source maps set the correspondence between lines in your original code and in the generated JavaScript code, otherwise your breakpoints will not be recognised and processed correctly.

    JavaScript and source maps are generated by transpiling the original code manually using the File Watcher of the corresponding type (CoffeeScript, TypeScript, or Dart). After that, you can debug the output JavaScript code.

    For details, see Using File Watchers, Transpiling CoffeeScript to JavaScript, and Transpiling TypeScript to JavaScript.

  3. Define a run/debug configuration for the application to be debugged.
  4. Create breakpoints in the source code.
  5. Launch a debugging session.
  6. Pause or resume the debugging session as required.
  7. During the debugger session, step through the breakpoints, evaluate expressions, change values on-the-fly , examine suspended program, explore frames, and set watches .

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

Important note

Debugging in RubyMine is possible in two ways:

  • using the built-in debugger, which you will be prompted to install the first time you begin debugging your application, depending on the Ruby version (e.g.: ruby-debug-ide, debase, ruby-debug-base19). Compatible gems of the built-in debugger will be installed into Ruby SDK.
  • using external debugger gems, like debugger(for Ruby 1.9) or byebug(for Ruby 2.x). Both of them require gem debugger-xml installed into SDK. This gem provides graphical interface for external debuggers.

See Also

Last modified: 30 November 2016