-
Notifications
You must be signed in to change notification settings - Fork 6.1k
Document breaking change: SDK no longer sets mono launch target for .NET Framework apps #51453
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
+57
−0
Merged
Changes from all commits
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
b57eece
Initial plan
Copilot b9d5c94
Add breaking change article for mono launch target removal
Copilot ccc82c7
human edits
gewarren e2fd57c
fix folder name
gewarren 16f85d6
Update docs/core/compatibility/sdk/11/mono-launch-target-removed.md
gewarren File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
47 changes: 47 additions & 0 deletions
47
docs/core/compatibility/sdk/11/mono-launch-target-removed.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,47 @@ | ||
| --- | ||
| title: "Breaking change: mono launch target not set for .NET Framework apps" | ||
| description: "Learn about the breaking change in .NET 11 where the .NET SDK no longer automatically sets mono as the launch target for .NET Framework applications on Linux." | ||
| ms.date: 02/03/2026 | ||
| ai-usage: ai-assisted | ||
| --- | ||
gewarren marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| # mono launch target not set for .NET Framework apps | ||
|
|
||
| The .NET SDK no longer automatically sets `mono` as the launch target for .NET Framework applications on Linux when using `dotnet run`. | ||
|
|
||
| ## Version introduced | ||
|
|
||
| .NET 11 Preview 1 | ||
|
|
||
| ## Previous behavior | ||
|
|
||
| Previously, when you called `dotnet run` on a .NET Framework application on Linux, the SDK automatically set the `RunCommand` and `RunArguments` properties in the project file to use Mono as the runtime: | ||
|
|
||
| ```xml | ||
| <RunCommand Condition="'$(RunCommand)' == ''">mono</RunCommand> | ||
| <RunArguments Condition="'$(RunArguments)' == ''">"$(TargetPath)" $(StartArguments)</RunArguments> | ||
gewarren marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| ``` | ||
|
|
||
| This allowed .NET Framework applications to be launched directly using `dotnet run` without additional configuration. | ||
|
|
||
| ## New behavior | ||
|
|
||
| Starting in .NET 11, the SDK no longer automatically configures these properties. Running `dotnet run` on a .NET Framework application on Linux fails unless the `RunCommand` and `RunArguments` properties are explicitly set in the project file. | ||
|
|
||
| ## Type of breaking change | ||
|
|
||
| This change is a [behavioral change](../../categories.md#behavioral-change). | ||
|
|
||
| ## Reason for change | ||
|
|
||
| This change was made because running .NET Framework applications on Linux using Mono is no longer officially supported. Mono ownership has transitioned, and the .NET SDK should not automatically configure launch targets for unsupported scenarios. | ||
|
|
||
| For more information, see [dotnet/sdk PR #52091](https://github.com/dotnet/sdk/pull/52091). | ||
|
|
||
| ## Recommended action | ||
|
|
||
| If you need to continue running .NET Framework applications on Linux using Mono, you can manually configure the `RunCommand` and `RunArguments` properties in your project file. | ||
|
|
||
gewarren marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| ## Affected APIs | ||
|
|
||
| None. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.