JetBrains Rider 2026.1 Help

运行和调试无需源代码的 .NET 可执行文件

如果您需要启动一个已编译的 .NET 可执行文件而无需源代码,您需要在 运行配置中配置目标可执行文件的启动属性。 配置创建后,您可以 附加调试器 Shift+F9 或不进行调试 Shift+F10 地启动它。 在调试的情况下,可执行文件将会被自动 反编译

另一种情况是将已编译的 .NET 可执行文件用作测试或调试非可执行类型项目(例如类库)的一部分。 在这种情况下,您需要将创建的配置与另一个执行您的代码的配置一起作为 多个目标启动。

为 .NET 可执行文件创建运行配置

  1. 通过以下任一方式打开 运行/调试配置 对话框:

    • 请选择 运行 | 编辑配置 从主菜单。

    • Navigation bar 可见 (查看 | 外观 | 导航栏) 的情况下,从运行/调试配置选择器中选择 编辑配置

    • 请按 Alt+Shift+F10 然后按 0

  2. 运行/调试配置 对话框中,单击 添加新配置 添加新配置 Alt+Insert ,选择 .NET 可执行文件 配置类型,并指定一个名称,以便您将来识别此配置。

  3. 可选择调整配置的 通用设置 并配置 启动前任务

  4. 指定目标可执行文件的路径。

  5. (可选)指定在启动配置时将传递给可执行文件的程序参数。 多个参数应以空格分隔。

  6. 可选地,指定自定义 工作目录 ,否则将使用目标可执行文件的目录。

  7. 可选地,以以下格式为目标可执行文件指定自定义 环境变量

    envVar1=value1;envVar2=value2
  8. 可选地,指定 .NET 运行时实参。 多个参数应以空格分隔。

    .NET 和 Mono 都支持在启动应用程序时设置自定义运行时参数。 例如,Mono 支持 许多运行时参数 ,以自定义您的应用程序运行方式。 您可以选择要使用的垃圾回收器(--gc=boehm--gc=sgen ),在 macOS 上,您可以选择要使用的运行时架构(--arch=32--arch=64 ),以及更多选项。

  9. 可选地,使用 运行时 选择器选择您机器上可用的运行时之一。

    如果您在 Windows 上工作,您可以检查您的应用程序在 Mono 运行时下的运行情况。 JetBrains Rider 将使用在 JetBrains Rider 设置 的 构建、执行、部署 | 工具集和构建 页面上指定的 Mono 可执行文件 Ctrl+Alt+S

    要使用 Mono 运行时进行调试,您需要:

    • Mono 4.2+

    • 项目中的便携式 PDB — <debugtype>portable</debugtype> .csproj 文件中,或者通过 mdbpdb2mdb生成。

  10. (可选)选择 终端模式。 默认会选择 自动的 ,这意味着 JetBrains Rider 会根据项目和 IDE 设置决定最佳终端输出模式。 如有必要,您可以手动选择终端输出模式:

    • 自动的 — Rider 会根据运行配置和可执行文件类型选择最合适的模式。

      • 通常为控制台类程序使用 PTY(伪终端) ,以提供交互式终端体验(进程“认为”它运行在真实终端中; isatty() 为 true;终端控制序列可能有效)。

      • 通常为 GUI 程序使用 标准流重定向 (例如,在 Windows 下链接 /SUBSYSTEM:WINDOWS 时自动识别),此时不需要终端。

      • 注意:默认选项无法避免所有边缘情况(尤其是在 Windows),因此如果输出或交互异常,切换模式可能有帮助。

    • 启用伪终端 — 在伪终端(Windows 下为 PTY / ConPTY)中运行该进程。

      • 最适合需要真实终端的程序:交互式提示、TUI 应用、Shell、readline 风格输入等。

      • 启用“完整终端体验”: isatty() 返回 true,并且支持终端控制序列(如光标移动、清屏等)。

      • 已知限制:某些场景下终端仿真可能不可靠(例如某些程序下的表现异常,尤其是 Windows 系统)。

    • 重定向标准流 — 通过重定向捕获 stdin/stdout/stderr ,而非在终端中运行。

      • 在 Rider 运行窗口中提供基本的文本输出收集功能。

      • 大多数特定于终端的行为不可用:许多应用会把输出视为“非终端”(isatty() 为 false),因此交互功能和终端控制序列通常无法使用。

      • 在此模式下,程序的彩色输出通常会减少或被禁用(一般为“无颜色”,除非程序支持在重定向输出中强制颜色)。

    • 使用 ANSI 代码重定向标准流 — 像前一个选项一样重定向流,但允许 ANSI 转义序列通过,实现彩色/样式化输出。

      • 适用于即使输出被重定向也能生成 ANSI 颜色码(或通过配置/环境强制)的程序。

      • 仍然不是真实终端:交互式终端行为通常依然不可用(isatty() 为 false),且除简单样式外的终端控制序列可能无法按预期工作。

      • 此模式旨在提升可读性(显示颜色),而无需切换到完整的 PTY 模式。

    • 外部控制台 — 在 Rider 终端窗口外部运行进程。 对于某些因流被重定向而异常(尤其是一些 GUI 程序)的程序,这是推荐的变通方案,例如 GUIConsole.WPF / ConPTY 演示场景等情况。

    • 禁用 — 不将 Rider 的控制台/终端处理附加到运行配置输出。 这对于 GUI 应用程序(不需要重定向终端输出)或任何 Rider 介入输出导致问题的情况都很有用。

  11. 默认情况下,.NET 和 Mono 应用程序的输出显示在 运行调试 窗口中。 您可以选择 使用外部控制台 在外部窗口中显示输出。

    请注意,此复选框不影响经典 .NET 应用程序类型(例如 .NET 控制台应用程序)——它们的输出始终显示在外部窗口中。

  12. 当您以调试模式运行配置时,JetBrains Rider 仅将其调试器附加到原始 .NET 进程。 如果您想调试由原始进程生成的子进程和孙子进程,请选择 附加到子 .NET 进程

    请注意,此选项仅适用于 .NET 8 及更高版本。

  13. 点击 Apply 以保存配置。

JetBrains Rider 运行配置:.NET 可执行文件
2026年 3月 25日