Run/debug multiple targets
JetBrains Rider provides several ways to run/debug multiple things at once, for example, a client-server app or a complex test, which requires launching several different processes or tasks. The first step in any case would be to create run configurations for each of the tasks or processes that need to be launched. Once all necessary configurations are in place, you have several options of launching them:
Multi-Launch configuration is the easiest way to launch multiple projects, optionally with additional tasks.
Launch multiple configurations in parallel using a compound run configuration
Launch multiple configurations in sequence using the Before Launch tasks
When multiple configurations are launched at once, each will be available in a separate tab in the Run or Debug tool window.
Multi-Launch configuration
Multi-Launch configuration is the easiest way to launch multiple projects in a controlled way. It can include several run configurations and auxiliary tasks, such as building and publishing the solution.
Create Multi-launch configuration
Select the desired projects in the solution explorer.
Right-click the selection and choose Run Multiple Projects.
JetBrains Rider will create run configurations for each project as well as a new Multi-Launch configuration. will be created and displayed in the Run/Debug Configurations dialog.
By default, when you start a Multi-Launch configuration, the start signals are sent to all configurations and tasks immediately.
If you need configurations and tasks to start in a specific order, first rearrange the configurations using the buttons on the left, then use the selectors in the When to launch column to change launch conditions of configurations and tasks.
Often when you need to launch multiple projects, you may want to debug only some of them, and others are started for auxiliary functions. To avoid attaching the debugger to all projects, select checkboxes in the Do not debug column next to the projects that should not be debugged.
Click OK to save the configuration.
The newly created Multi-Launch configuration will be displayed as the default configuration in the toolbar selector, and you will be able to run or debug it when necessary.
Parallel launch with a compound run/debug configuration
A Compound run configuration lets you launch several run/debug configurations simultaneously.
Create a compound run/debug configuration
Create a run/debug configuration for each app and process that should be launched in your session.
Go to
. Alternatively, press Alt+Shift+F10, then 0.In the Run/Debug Configurations dialog, click or press Alt+Insert, then select Compound.
Specify the run/debug configuration name in the Name field. This name will be shown in the list of the available run/debug configurations.
Select Store as project file to make this run/debug configuration available to other team members.
To include a new run/debug configuration into the compound configuration , click Add and select the desired one from the list.
Apply the changes and close the dialog.
Once you set up the compound configuration, you can launch it with or without debugging.
Sequential launch with the Before Launch task
You can use run/debug configuration's Before Launch tasks for many different things, and one of them is to launch other run/debug configurations.
Configure 'Before Launch' tasks
Create a run/debug configuration for each app and process that should be launched in your session.
Go to
. Alternatively, press Alt+Shift+F10, then 0.In the Run/Debug Configuration dialog, select the configuration that should be launched last.
Click Modify options and select Add before launch task.
Click Add task, then select Run Another Configuration, and choose the desired configuration.
Make sure that all necessary configurations are added. Use the Up Alt+Up and Down Alt+Down to arrange the launch order (configurations at the top will be launched first).
Apply the changes and close the dialog.
Once you set up Before Launch tasks in the configuration that should be started last, you can launch it with or without debugging.