ReSharper 2023.3 Help

General

ReSharper options: Tools | Build | General

In this page of ReSharper options, you can configure preferences of ReSharper Build.

Toolset

.NET CLI executable path

The path to the .NET CLI tools executable is detected automatically, but you can specify a path to a custom installation if your setup requires it.

MSBuild version

Using this selector, you can choose the version of MSBuild.exe that is used to build the solution. You can choose one of the automatically detected MSBuild versions, or specify the path to a custom MSBuild executable in a non-standard location.

MSBuild global properties

In this field, you can specify global MSBuild properties to use with ReSharper Build.

Build

Use ReSharper Build

If this checkbox is selected, ReSharper will optimize build process with ReSharper Build, which tracks changes in your solution and only rebuilds modified projects and necessary dependencies. In this case, ReSharper Build will be invoked on all build commands, for example Build | Build Solution Ctrl+Shift+B as well as for corresponding context menu commands on projects and solution folders in Solution Explorer.

If the checkbox is unselected, the Visual Studio's native build management will be used. You may need to disable this option if your solution includes non-MSBuild projects or projects with custom build steps.

Run build after solution is loaded

This self-explanatory option will be applied independently of selected build management preference.

Restore NuGet packages before build

When this checkbox is selected, ReSharper will restore NuGet packages for all projects in the current solution using ReSharper's proprietary mechanism, which works in all supported versions of Visual Studio . Note that this option requires .NET Framework 4.5 or later to be installed on your machine.

Use up to X processes in parallel

Using this selector, you can choose the number of parallel processes to use when ReSharper Build is invoked explicitly.

Invoke pre- and post- build event targets for skipped projects

When ReSharper uses heuristics to skip some projects during the build process, such projects are skipped completely, including all additional build logic.

Use this checkbox to always execute pre-build and post-build events for all projects.

To check and configure Pre- and Post- build events, right-click the project in the Solution Explorer, select Properties, and then choose Build Events.

Invoke BeforeBuild and AfterBuild targets for skipped projects

When ReSharper uses heuristics to skip some projects during the build process, such projects are skipped completely, including all additional build logic.

Use this checkbox to always execute BeforeBuild and AfterBuild MSBuild targets.

Design time build (solution loading)

When you open a solution, ReSharper launches MSBuild in the background to build the list of files in each project, resolve project references and so on.

Use up to X processes in parallel

In most cases launching MSBuild in a single process results in the fastest solution load times, however sometimes (mostly in large solutions) multiple process can speed up solution load.

So if you see the 'Wait for solution synchronisation' status for too long after opening a solution, you can try setting multiple processes in this selector.

MSBuild solution loading targets

If your solution uses some non-standard components defined via MSBuild targets, ReSharper may fail to load these components. A typical symptom of that is unresolved (red) code in some files, but no errors on solution build.

In this case, list names of such targets separated with comma in this field.

Order project loading according to dependencies

Build logging

Options in this category are only available when Use ReSharper Build is enabled.

Write MSBuild log to output

When this checkbox is selected, log items selected under it will be shown in Visual Studio's Output window.

Notes:

  • To display the Output window whenever you build a project, go to Tools | Options | Projects and Solutions | General and select Show Output window when build starts.

  • If you want log items to have different colors depending on their origin and kind, select Paint output log above on this page.

  • You can also configure how log items from NuGet are displayed in the output on the Tools | NuGet Restorer page of ReSharper options

Write MSBuild to log file

When this checkbox is selected, build output is saved to a log file. Use controls under this checkbox to choose a verbosity level and a path where the log file is saved. If the selected log directory does not exist, it is shown in red. However, ReSharper will create the non-existent path when logging to file for the first time.

Note that logging to file does not depend on logging to the Output window.

Last modified: 01 February 2024