IntelliJ IDEA 2017.1 Help

Configuring JavaScript Debugger and JetBrains Chrome Extension

This feature is supported in the Ultimate edition only.

On this page:

Installing JetBrains Chrome Extension

The JetBrains Chrome extension is mainly responsible for debugging JavaScript in Chrome and Dartium. During a debugging session, the extension also supports Live Editing of HTML, CSS, and JavaScript, and shows the DOM tree and the source code of the actual page.
When the extension is installed, the /help/img/idea/2017.1/chrome_extenstion_jb_icon.png icon is displayed next to the Chrome address bar.

To install the JetBrains Chrome extension:

  1. Open the JetBrains IDE Support page in Chrome Web Store.
  2. Click the Add to Chrome button /help/img/idea/2017.1/chrome_extension_add_to_chrome.png, and then click Add in the Confirm New Extension dialog box that opens. The Add to Chrome button changes to Added to Chrome /help/img/idea/2017.1/chrome_extenstion_added_to_chrome.png.

Configuring the JavaScript Debugger

Debugging JavaScript in IntelliJ IDEA is supported through the JavaScript Debugger plugin. The plugin is bundled with IntelliJ IDEA and activated by default. If the plugin is not activated, enable it on the Plugins page of the Settings / Preferences Dialog as described in Enabling and Disabling Plugins.

Debugging of JavaScript code is supported in Google Chrome and other browsers of the Chrome family with the JetBrains IDE Support extension installed as described above.

During a debugging session, IntelliJ IDEA considers any injected JavaScript code in a web page opened in the browser as subject for debugging. This means that you cannot use one single instance of a browser for browsing and for debugging at the same time. For Google Chrome you can solve this problem by configuring IntelliJ IDEA to use a separate Chrome user profile for debugging.

To ensure successful debugging, it is enough to specify the built-in web server port and accept the default settings that IntelliJ IDEA suggests for other debugger options.

To set the built-in web server port:

  1. Open the Debugger page: choose File | Settings for Windows and Linux or IntelliJ IDEA | Preferences for macOS and click Debugger under Build, Execution, Deployment.
  2. In the Built-in server area, specify the port where the built-in web server runs so the Chrome extension can connect through it. By default this port is set to the default IntelliJ IDEA port 63342 through which IntelliJ IDEA accepts connections from services. You can set the port number to any other value starting with 1024 and higher.


  1. Suppress calls to the files on the built-in server from other computers or from outside IntelliJ IDEA by clearing the Can accept external connections or Allow unsigned requests check box respectively.
  2. On the Data Views page under the Debugger node, configure advanced debugger options: enable or disable Inline Debugging, specify when you want to see tooltips with object values and expressions evaluation results, etc.
  3. Click JavaScript under the Data Views node and on the JavaScript page that opens, specify the following:
    • Whether you want object node properties to be shown. If so, specify the properties. Use /help/img/idea/2017.1/new.png and /help/img/idea/2017.1/delete.png to manage the list of properties.

Activating, de-activating, and uninstalling JetBrains Chrome extension

Control over the JetBrains Chrome extension is provided through the chrome://extensions page:

  • To open the page, just type chrome://extensions in the Chrome address bar.
    Alternatively click Customize and control Google Chrome (/help/img/idea/2017.1/chrome_extension_control_icon.png), choose Settings on the context menu, and then click Extensions on the chrome://settings page that opens.
  • To deactivate the extension, clear the Enabled check box. The check box name changes to Enable.
  • To activate the extension, select the Enable check box.
  • To uninstall the extension, click the Remove from Chrome button /help/img/idea/2017.1/chrome_extension_remove.png.

Overriding the default CORS settings

Suppose the page you are debugging requests a resource which is, for security reasons, protected against access through CORS settings. You can enable access to the protected resources by changing the Chrome extension options.

To override the default CORS settings:

  1. Right-click /help/img/idea/2017.1/chrome_extenstion_jb_icon.png and choose Options on the context menu. A web page with Chrome extension options opens showing the parameters to connect to IntelliJ IDEA.
  2. In the Force CORS text box, type the pattern that defines the URL addresses you want to make accessible, for example:*.

Changing the default port for connecting to IntelliJ IDEA

During a debugging session, the Chrome extension listens to the port of the JetBrains IDE from which the extension was invoked. Each IDE including IntelliJ IDEA has its own default port on which it starts.

If for some reason the default IntelliJ IDEA port is already busy, IntelliJ IDEA finds the closest available port and starts on it. This results in a conflict: IntelliJ IDEA is running on a "new" port while the Chrome extension still listens to the port of a previously started product and fails to establish connection with IntelliJ IDEA.

The conflict reveals when you initiate a debugging session from IntelliJ IDEA: the extension fails to connect through the default port, IntelliJ IDEA waits for connection from the extension and displays the following message with the port number where it is actually running (for example, current port 63343):


To fix the problem, specify the actual IntelliJ IDEA port in the Chrome extension options:

  1. Right-click /help/img/idea/2017.1/chrome_extenstion_jb_icon.png and choose Options on the context menu. A web page with the Chrome extension options opens showing the parameters to connect to IntelliJ IDEA.
  2. In the IDE Connection area, specify the actual IntelliJ IDEA port in the Port spin box.

See Also

Last modified: 18 July 2017