# Rust

> **TL;DR**
> Required plugin: [Rust](https://plugins.jetbrains.com/plugin/22407-rust) – free for IntelliJ IDEA Ultimate

The [Rust](https://plugins.jetbrains.com/plugin/22407-rust) plugin equips IntelliJ IDEA with full-fledged Rust support. This guide overviews the basic procedures to get you started. You can find more information about the supported features in [RustRover documentation](https://www.jetbrains.com.cn/en-us/help/rust/getting-started.html).

> **Note:**
> Rust plugin maintains feature parity with [RustRover](https://www.jetbrains.com.cn/en-us/rust/), the JetBrains standalone IDE for Rust development. Using the plugin with IntelliJ IDEA results in a slightly different setup – refer to [Rust plugin vs. RustRover](#rust-plugin-rustrover-ide-comparison) for a detailed comparison.

> **Tip:**
> If you do not need IntelliJ IDEA-specific features and prefer dedicated Rust support, try out [RustRover](https://www.jetbrains.com.cn/en-us/rust/). It is [free for non-commercial use](https://www.jetbrains.com.cn/en-us/rust/buy/) and included in [All Products Pack](https://www.jetbrains.com.cn/en-us/all/) and [Student Pack](https://www.jetbrains.com.cn/en-us/community/education/#students).

## Install Rust plugin

Procedure:

1. Launch IntelliJ IDEA. On the Welcome screen, click Plugins.

If you already have a project opened, go to `Settings (`Ctrl+Alt+S` (Windows), `⌘ Comma` (macOS), `⌘ Comma` (IntelliJ IDEA Classic (macOS)), `⌘ Comma` (macOS System Shortcuts), `Ctrl+Alt+S` (XWin), `Ctrl+Alt+S` (GNOME), `Ctrl+Alt+S` (KDE), `Ctrl+Alt+S` (Emacs), `Ctrl+Alt+S` (Sublime Text), `⌘ Comma` (Sublime Text (macOS)), `Ctrl+Alt+S` (NetBeans), `Ctrl+Alt+S` (Visual Studio), `⌘ Comma` (Visual Studio (macOS)), `Ctrl+Alt+S` (Eclipse), `⌘ Comma` (Eclipse (macOS))) | Plugins`.

2. Select the Marketplace tab and search for the Rust plugin.

![Installing Rust plugin from Settings](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cl_install_rust_plugin_from_settings.png)

3. Click Install and wait for the download to complete.

Restart the IDE if prompted.

The plugin will be activated automatically. To double-check it is active, navigate to `Help | Register` and select Rust in the left-hand pane.

![Activating Rust plugin from the Licences dialog](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij_activated_rust_plugin_in_licences_dialog.png)

> **Note:**
> If Rust plugin has not been activated, make sure you have purchased the licence in your [JetBrains Account](https://account.jetbrains.com/licenses) and [activate manually](register.html#activate-license).

## Install Rust toolchain

To develop in Rust, you need several basic tools: a compiler, a package manager, a formatter, and so on. This set of tools is referred to as the Rust toolchain. You will also need the [Rust Standard Library](https://doc.rust-lang.org/std/).

Procedure:

If you have already opened a project and the Rust toolchain is missing, you will see a notification banner right above the editor:

![No Rust toolchain configured notification](https://resources.jetbrains.com.cn/help/img/idea/2026.2/rust_no_toolchain_notification.png)

1. Click Set up toolchain.

Alternatively, open IDE settings (`Ctrl+Alt+S` (Windows), `⌘ Comma` (macOS), `⌘ Comma` (IntelliJ IDEA Classic (macOS)), `⌘ Comma` (macOS System Shortcuts), `Ctrl+Alt+S` (XWin), `Ctrl+Alt+S` (GNOME), `Ctrl+Alt+S` (KDE), `Ctrl+Alt+S` (Emacs), `Ctrl+Alt+S` (Sublime Text), `⌘ Comma` (Sublime Text (macOS)), `Ctrl+Alt+S` (NetBeans), `Ctrl+Alt+S` (Visual Studio), `⌘ Comma` (Visual Studio (macOS)), `Ctrl+Alt+S` (Eclipse), `⌘ Comma` (Eclipse (macOS))) and select `Languages & Frameworks | Rust`.

2. If the Rust toolchain is not detected, Toolchain version will display N/A. To install the Rust toolchain, click the Install Rustup button – IntelliJ IDEA will attempt to install both the toolchain and the standard library using [Rustup](https://rustup.rs/).

![Rust toolchain settings](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij_settings_no_toolchain.png)

3. Once the installation is complete, IntelliJ IDEA will automatically detect its location, populating the Toolchain version and Standard library paths.

4. Click OK to apply the settings.

## Open or create a Rust project

You have three options to start working on a Rust project.

> **Note:**
> Before proceeding, make sure you have [installed Rust plugin](#install-rust-plugin).

Procedure: Create a new Cargo project

1. Launch IntelliJ IDEA.

To start a new project, do one of the following:

* Click New Project on the Welcome screen.

* Select `File | New | Project` from the main menu.

* Click the Project widget in the main window header and select New Project. ![Create a new project using the Project widget](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij_new_project_from_widget.png)

2. In the left pane, make sure Rust is selected.

3. Specify the project location and name.

4. Specify the location of the [Rust
toolchain and standard library](https://www.jetbrains.com.cn/en-us/help/rust/rust-toolchain.html).

If the toolchain and standard library are installed, IntelliJ IDEA will detect them automatically. Otherwise, you will be suggested to download [Rustup](https://rustup.rs/).

![Install Rustup from the New Project wizard](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_new_project_install_rustup.png)

5. Select the required [project
template](https://www.jetbrains.com.cn/en-us/help/rust/rust-project-templates.html) and click Create.

![New project wizard](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij_new_rust_project_wizard.png)

Procedure: Open a local Cargo project

1. In the main menu, go to `File | Open`. In the file chooser, select the directory containing the root `Cargo.toml` file (or `Cargo.toml` itself) and click Open:

![Open a project (not as file)](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_qsg_openprj.png)

2. In the dialog that opens, select Open as project.

![Open a project](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_open_as_project.png)

3. When opening the project for the first time, IntelliJ IDEA will prompt you to confirm that you consider it safe.

![Untrusted project](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij_trust_cargo_project.png)

Click Trust Project if you are certain the project poses no threats and you would like to enable all IDE features. If you have any doubts, select Preview in Safe Mode. For more information, refer to [Project security](project-security.html).

![Open a project](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij_open_rustprj_result.png)

Procedure: Clone a repository from VCS

1. In the main menu, go to `File | New | Project from Version Control` or click Get from VCS on the Welcome screen.

2. Specify the repository URL and the destination directory. Click Clone:

![Cloning a repo](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_qsg_clonerepo.png)

## Explore the workspace and features

The plugin's feature set is designed to simplify the Rust development process. Let's take a closer look at  what it has to offer.

### Syntax highlighting and code reference

To help you quickly read and understand Rust code, the plugin provides highlighting, [Inlay hints](inlay-hints.html), [macro expansion,](https://www.jetbrains.com.cn/en-us/help/rust/viewing-reference-information.html#macro-expansion) [quick access to documentation](viewing-reference-information.html#quick-doc-popup), and more.

![Interactive inlay hints](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_inlay_hints.animated.gif)

Here are some shortcuts you may find useful:

| Action | Shortcut |
| --- | --- |
|  [Expand macro](https://www.jetbrains.com.cn/en-us/help/rust/viewing-reference-information.html#macro-expansion) | `Alt+Enter` (Windows), `⌥ ⏎` (macOS), `⌥ ⏎` (IntelliJ IDEA Classic (macOS)), `⌥ ⏎` (macOS System Shortcuts), `Alt+Enter` (XWin), `Alt+Enter` (GNOME), `Alt+Enter` (KDE), `Alt+Enter` (Emacs), `Alt+Enter` (Sublime Text), `⌥ ⏎` (Sublime Text (macOS)), `Alt+Enter` (NetBeans), `Alt+Enter` (Visual Studio), `⌥ ⏎` (Visual Studio (macOS)), `Ctrl+1` (Eclipse), `⌘ 1` (Eclipse (macOS)) |
| [Go                         to declaration](navigating-through-the-source-code.html#go_to_declaration) | `Ctrl+Click` (Windows), `Ctrl+Click` (macOS), `Ctrl+Click` (IntelliJ IDEA Classic (macOS)), `Ctrl+Click` (macOS System Shortcuts), `Ctrl+Click` (XWin), `Ctrl+Click` (GNOME), `Ctrl+Click` (KDE), `Ctrl+Click` (Emacs), `Ctrl+Click` (Sublime Text), `Ctrl+Click` (Sublime Text (macOS)), `Ctrl+Click` (NetBeans), `Ctrl+Click` (Visual Studio), `Ctrl+Click` (Visual Studio (macOS)), `Ctrl+Click` (Eclipse), `Ctrl+Click` (Eclipse (macOS)) |
| Get [type                         info](viewing-reference-information.html#type-info)  | `Ctrl+Shift+P` (Windows), `⌃ ⇧ P` (macOS), `⌃ ⇧ P` (IntelliJ IDEA Classic (macOS)), `⌃ ⇧ P` (macOS System Shortcuts), `Ctrl+Shift+P` (XWin), `Ctrl+Shift+P` (GNOME), `Ctrl+Shift+P` (KDE), `Ctrl+Shift+P` (Emacs), `Ctrl+Shift+P` (Sublime Text), `⌃ ⇧ P` (Sublime Text (macOS)), `Ctrl+Shift+P` (NetBeans), `Ctrl+Shift+P` (Visual Studio), `Ctrl+Shift+P` (Visual Studio (macOS)), `Ctrl+Shift+P` (Eclipse), `Ctrl+Shift+P` (Eclipse (macOS)) |
| [Quick documentation](viewing-reference-information.html#view-quick-docs)  | `Ctrl+Q` (Windows), `F1` (macOS), `⌃ J` (IntelliJ IDEA Classic (macOS)), `⌘ I` (macOS System Shortcuts), `Ctrl+Q` (XWin), `Ctrl+Q` (GNOME), `Ctrl+Q` (KDE), `Ctrl+Q` (Emacs), `Ctrl+Q` (Sublime Text), `Ctrl+Q` (Sublime Text (macOS)), `Ctrl+Q` (NetBeans), `Ctrl+K, I` (Visual Studio), `⌘ K, I` (Visual Studio (macOS)), `Alt+Middle-Click` (Eclipse), `⌥ Middle-Click` (Eclipse (macOS)) |
|  [Quick definition](https://www.jetbrains.com.cn/en-us/help/rust/viewing-reference-information.html#quick-defs) | `Ctrl+Shift+I` (Windows), `⌥ Space` (macOS), `⌘ ⇧ I` (IntelliJ IDEA Classic (macOS)), `⌘ Y` (macOS System Shortcuts), `Ctrl+Shift+I` (XWin), `Ctrl+Shift+I` (GNOME), `Ctrl+Shift+I` (KDE), `Ctrl+Shift+I` (Emacs), `Ctrl+Shift+I` (Sublime Text), `⌥ Space` (Sublime Text (macOS)), `Ctrl+Shift+I` (NetBeans), `Alt+F12` (Visual Studio), `⌥ Space` (Visual Studio (macOS)), `Ctrl+Shift+I` (Eclipse), `⌥ Space` (Eclipse (macOS)) |

For more information, refer to [RustRover documentation](https://www.jetbrains.com.cn/en-us/help/rust/viewing-reference-information.html).

### Code analysis and error reporting

To help you fight errors and inconsistencies in code, the plugin offers [built-in inspections](code-inspection.html) and integrates with  [external
linters](https://www.jetbrains.com.cn/en-us/help/rust/rust-external-linters.html).

For a summary of all detected problems, use the Inspections widget in the upper-right corner of the editor. To see the details, click the widget and refer to the [Problems tool window](problems-tool-window.html) (or select `View | Tool Windows | Problems`):

![Code analysis results: Problems tool window and Inspections widget](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_code_analysis_results.png)

For more information, refer to [Code inspections](https://www.jetbrains.com.cn/en-us/help/rust/code-inspection.html) and [External linters](https://www.jetbrains.com.cn/en-us/help/rust/rust-external-linters.html) in RustRover documentation.

### Formatting

You can format your code using either the [IDE's built-in formatter](reformat-and-rearrange-code.html) or [Rustfmt](https://github.com/rust-lang/rustfmt) (enabled by default).

Procedure: Enable (or disable) Rustfmt instead of the built-in formatter

1. Open settings by pressing `Ctrl+Alt+S` (Windows), `⌘ Comma` (macOS), `⌘ Comma` (IntelliJ IDEA Classic (macOS)), `⌘ Comma` (macOS System Shortcuts), `Ctrl+Alt+S` (XWin), `Ctrl+Alt+S` (GNOME), `Ctrl+Alt+S` (KDE), `Ctrl+Alt+S` (Emacs), `Ctrl+Alt+S` (Sublime Text), `⌘ Comma` (Sublime Text (macOS)), `Ctrl+Alt+S` (NetBeans), `Ctrl+Alt+S` (Visual Studio), `⌘ Comma` (Visual Studio (macOS)), `Ctrl+Alt+S` (Eclipse), `⌘ Comma` (Eclipse (macOS)) and navigate to `Languages & Frameworks | Rust | Rustfmt`.

2. To enable Rustfmt, set the Use Rustfmt instead of built-in formatter checkbox. To disable Rustfmt, clear the checkbox.

> **Note:**
> When Rustfmt is enabled, IntelliJ IDEA will only use it for [formatting whole files](null) and [Cargo projects](null). For code fragments, groups of files, and directories, IntelliJ IDEA will automatically switch to the [built-in formatter](reformat-and-rearrange-code.html).

![Enabling rustfmt instead of the build-in formatter](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij_enable_rustfmt.png)

3. Click OK to apply the changes.

Procedure: Reformat a file

1. Open the file you want to reformat in the editor.

2. Press `Ctrl+Alt+Shift+L` (Windows), `⌘ ⌥ ⇧ L` (macOS), `⌘ ⌥ ⇧ L` (IntelliJ IDEA Classic (macOS)), `⌘ ⌥ ⇧ L` (macOS System Shortcuts), `Ctrl+Alt+Shift+L` (XWin), `Ctrl+Alt+Shift+L` (GNOME), `Ctrl+Alt+Shift+L` (KDE), `Ctrl+Alt+Shift+L` (Emacs), `Ctrl+Alt+Shift+L` (Sublime Text), `⌘ ⌥ ⇧ L` (Sublime Text (macOS)), `Ctrl+Alt+Shift+L` (NetBeans), `Ctrl+Alt+Shift+L` (Visual Studio), `⌘ ⌥ ⇧ L` (Visual Studio (macOS)), `Ctrl+Alt+Shift+L` (Eclipse), `⌘ ⌥ ⇧ L` (Eclipse (macOS)) or select `Code | Reformat File`.

3. In the `Reformat File` dialog, select additional options if necessary and click `Run`.

![Reformat file dialog](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri-reformat-file-dialog.png)

For more information, refer to [Reformat code](reformat-and-rearrange-code.html) and [Rustfmt](https://www.jetbrains.com.cn/en-us/help/rust/rustfmt.html).

### The Cargo tool window

The [Cargo tool window](https://www.jetbrains.com.cn/en-us/help/rust/rust-cargo-tool-window.html) is designed to help you with Cargo tasks. By default, it is pinned to the tool windows bar. You can show or hide it by clicking the window indicator on the sidebar ![the Rust icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/intellij-rust-242.23151.icons.expui.toolWindow.svg) (alternatively, select `View | Tool Windows | Cargo` from the main menu).

![Cargo tool window](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cargo_tw.png)

For more information, refer to [RustRover documentation](https://www.jetbrains.com.cn/en-us/help/rust/rust-cargo-tool-window.html).

### Sharing code in Playground

You can share your code in [Rust Playground](https://play.rust-lang.org/) without leaving the editor.

Procedure: Share in Playground

1. Select the code fragment you'd like to share (otherwise, the IDE will copy the whole file).

2. Right-click and choose `Rust | Share in Playground`.

IntelliJ IDEA will create a [GitHub Gist](https://docs.github.com/en/rest/gists/gists?apiVersion=2022-11-28#about-gists) and display a notification popup with a link to the playground.

![Sharing code in Playground](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_sharing_in_playground.animated.gif)

For more features, refer to [RustRover documentation](https://www.jetbrains.com.cn/en-us/help/rust/).

## Build and run

Use the Build action to compile your code and Run to execute it. There are several ways to perform these actions:

Procedure: Build/run Rust code

* To build or run a particular target, open the [Cargo tool window](null) (`View | Tool Windows | Cargo`) and double-click the target.

![Running a target from Cargo tool window](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_cargo_tw_run.png)

* To run from a particular entry point, locate it in the editor, click ![Execute button](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app-client.expui.run.run.svg) in the gutter, and select Run:

![Run from the gutter menu](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_run_from_gutter.png)

* To run a particular file or module, open the Project view, right-click the necessary file or module, and select Run:

![Run file from the context menu in Project view](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_runfromprjview.png)

* If you want to build or run code using a [predefined configuration](run-debug-configuration.html) (with custom parameters and settings), select it in the switcher on the main toolbar and:

* click ![Build button](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.expui.build.build.svg) to build (`Ctrl+F9` (Windows), `⌘ F9` (macOS), `⌘ F9` (IntelliJ IDEA Classic (macOS)), `⌘ ⌃ B` (macOS System Shortcuts), `Ctrl+F9` (XWin), `Ctrl+F9` (GNOME), `Ctrl+9` (KDE), `Ctrl+F9` (Emacs), `Ctrl+F9` (Sublime Text), `Ctrl+F9` (Sublime Text (macOS)), `F11` (NetBeans), `F7` (Visual Studio), `F7` (Visual Studio (macOS)), `Ctrl+F9` (Eclipse), `⌘ B` (Eclipse (macOS)))

* click ![Execute button](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app-client.expui.run.run.svg) to run (`Shift+F10` (Windows), `⌃ R` (macOS), `⇧ F10` (IntelliJ IDEA Classic (macOS)), `⌥ ⇧ R` (macOS System Shortcuts), `Shift+F10` (XWin), `Shift+F10` (GNOME), `Shift+F10` (KDE), `Shift+F10` (Emacs), `Shift+F10` (Sublime Text), `Shift+F10` (Sublime Text (macOS)), `F6` (NetBeans), `Ctrl+F5` (Visual Studio), `⌃ F5` (Visual Studio (macOS)), `Alt+Shift+X` (Eclipse), `⌘ ⇧ F11` (Eclipse (macOS)))

![Build icon on the main toolbar](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_build_from_toolbar.png)

* You can always build/run  [using a Cargo command](https://www.jetbrains.com.cn/en-us/help/rust/rust-cargo-tool-window.html#run-command).

For more information, refer to [RustRover documentation](https://www.jetbrains.com.cn/en-us/help/rust/rust-building-and-running.html).

## Debug

Rust plugin provides a full-fledged debugger – with [breakpoints](using-breakpoints.html), [variable monitoring](examining-suspended-program.html#watches), [stepping](stepping-through-the-program.html),  [memory and disassembly views](https://www.jetbrains.com.cn/en-us/help/rust/rust-memory-disassembly-hex-views.html)  and other handy features.

> **Note:**
> If you are using Windows or Linux, make sure the [Native Debugging Support](https://plugins.jetbrains.com/plugin/12775-native-debugging-support) plugin is installed. With the plugin installed, both LLDB and GDB debuggers are available.
>
>
>
> If you are using macOS, only LLDB debugger is available; no additional installations are required.

Procedure: Start a debug session

* To start debugging from a particular entry point, locate it in the editor, click ![Run icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app-client.expui.run.run.svg) in the gutter, and select Debug:

![Debug gutter option](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_debug_from_gutter.png)

* To debug code using a [predefined configuration](run-debug-configuration.html) (with custom parameters and settings), select it in the configuration switcher on the main toolbar and click ![Run icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app-client.expui.run.debug.svg):

![Initiating debug from the toolbar](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_debug_from_toolbar.png)

* You can always start a debug session  [by running a Cargo command](https://www.jetbrains.com.cn/en-us/help/rust/rust-cargo-tool-window.html#run-command).

For more information, refer to [Start the debugger session](starting-the-debugger-session.html).

Learn how to perform basic debugging actions from these guides:

* [Setting breakpoints](using-breakpoints.html)

* [Using watches](examining-suspended-program.html#watches)

* [Stepping through](stepping-through-the-program.html)

* [Viewing memory and disassembly code representation](https://www.jetbrains.com.cn/en-us/help/rust/rust-memory-disassembly-hex-views.html)

![Debug session](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_qsg_debug_session.png)

For more information, refer to [RustRover documentation](https://www.jetbrains.com.cn/en-us/help/rust/debugging-code.html).

## Test

You will likely support your code with tests,  [doctests](https://www.jetbrains.com.cn/en-us/help/rust/rust-doctest-support.html), and/or benchmarks. Here are a few quick ways to run them:

Procedure: Run test(s), doctest(s), or benchmark(s)

* To run a single test or doctest, open it in the editor, click ![Run icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app-client.expui.run.run.svg) in the gutter, and select Run:

![Running a test using the gutter icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_run_test.png)

* To run a test/benchmark target, open the [Cargo tool window](null) (`View | Tool Windows | Cargo`) and double-click the target:

![Running a target from Cargo tool window](https://resources.jetbrains.com.cn/help/img/idea/2026.2/rust_cargo_tw_run.animated.gif)

* You can always run tests  [using a Cargo command](https://www.jetbrains.com.cn/en-us/help/rust/rust-cargo-tool-window.html#run-command).

The [Run tool window](run-tool-window.html) will open, automatically displaying the results:

![Test runner window](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_test_runner_tab.png)

For more information, refer to [RustRover
documentation](https://www.jetbrains.com.cn/en-us/help/rust/performing-tests.html).

## Run with code coverage

The plugin provides [code coverage analysis](code-coverage.html) for Rust code.

Procedure: Run with Code Coverage

To get code coverage statistics, do one of the following:

* Locate the required entry point, click ![Execute button](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app-client.expui.run.run.svg) in the gutter, and select Run with Coverage:

![Running with coverage from Project view](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_coverage_gutter.png)

* Locate the necessary file in Project view, right-click, and select Run with Coverage:

![Running with coverage using gutter menu](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_coverage_prjview.png)

* If you want to run a [predefined configuration](run-debug-configuration.html) (with custom parameters and settings), select it in the switcher on the main toolbar, then press ![Run icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app-client.expui.general.moreVertical.png) and select Run with Coverage:

![Running a configuration with coverage](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_coverage_toolbar.png)

The Coverage tool window (`View | Tool Windows | Coverage`) will open, automatically displaying the results:

![Coverage tool window](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ri_coverage_tw.png)

For more information, refer to [Code coverage](code-coverage.html).

To learn more about Rust support, refer to [RustRover documentation](https://www.jetbrains.com.cn/en-us/help/rust/) or [contact our support team](https://www.jetbrains.com.cn/en-us/help/rust/getting-help.html#contact-support).

## Rust plugin vs. RustRover

### Differences in the feature set

|  | [RustRover](https://www.jetbrains.com.cn/en-us/rust/) | [CLion](https://www.jetbrains.com.cn/en-us/clion/)+[Rust plugin](https://plugins.jetbrains.com/plugin/22407-rust) | [IntelliJ IDEA Ultimate](https://www.jetbrains.com.cn/en-us/idea/)+[Rust plugin](https://plugins.jetbrains.com/plugin/22407-rust) | [PyCharm Pro](https://www.jetbrains.com.cn/en-us/pycharm/)+[Rust plugin](https://plugins.jetbrains.com/plugin/22407-rust) |
| --- | --- | --- | --- | --- |
| [Debugger](https://www.jetbrains.com.cn/en-us/help/rust/debugging-code.html) | For Linux, both LLDB and GDB are available. For macOS, only LLDB is available. For Windows, LLDB is supported for MSVC, GDB is supported for GNU. [Learn more](https://www.jetbrains.com.cn/en-us/help/rust/rust-switch-debuggers-and-renderers.html#switch-debuggers) | For Windows and Linux, both LLDB and GDB are available. For macOS, only LLDB is available.  Allows to debug on-chip   | For Windows and Linux, both LLDB and GDB are available ([Native Debugging Support](https://plugins.jetbrains.com/plugin/12775-native-debugging-support) free plugin required). For macOS, only LLDB is available.   | For Windows and Linux, both LLDB and GDB are available ([Native Debugging Support](https://plugins.jetbrains.com/plugin/12775-native-debugging-support) free plugin required). For macOS, only LLDB is available.   |
| Profiler | Available on macOS, Linux, and WSL | Available on macOS, Linux, and WSL | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.expui.general.close.svg) | Available on macOS, Linux, and WSL |
| [Valgrind Memcheck](https://www.jetbrains.com.cn/en-us/help/clion/memory-profiling-with-valgrind.html) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.expui.general.close.svg) | Available on Linux, WSL, and macOS (10.12 or later) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.expui.general.close.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.expui.general.close.svg) |
| Database support | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) |

### Language support

|  | [RustRover](https://www.jetbrains.com.cn/en-us/rust/) | [CLion](https://www.jetbrains.com.cn/en-us/clion/)+[Rust plugin](https://plugins.jetbrains.com/plugin/22407-rust) | [IntelliJ IDEA Ultimate](https://www.jetbrains.com.cn/en-us/idea/)+[Rust plugin](https://plugins.jetbrains.com/plugin/22407-rust) | [PyCharm Pro](https://www.jetbrains.com.cn/en-us/pycharm/)+[Rust plugin](https://plugins.jetbrains.com/plugin/22407-rust) |
| --- | --- | --- | --- | --- |
| Rust | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) |
| Java, Groovy, Kotlin | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.expui.general.close.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.expui.general.close.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.expui.general.close.svg) |
| C/C++, Objective С/С++ | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.expui.general.close.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.expui.general.close.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.expui.general.close.svg) |
| Python | Via [free plugin](https://plugins.jetbrains.com/plugin/631-python) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) |
| JavaScript, TypeScript | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) |
| HTML, CSS | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) |
| Sass, SCSS, Less | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) |
| XML, JSON, YAML, XSLT, XPath | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) |
| Markdown | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) | ![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.actions.checked.svg) |

