将 DebugSymbols 设置为 false 会禁用 PDB 生成

现有 MSBuild 文档表示,在命令行上指定 DebugSymbols=false 即意味着不会生成程序数据库 (.pdb) 文件。 但在 .NET 8 之前,情况并非如此。 此行为已更新,现在将 DebugSymbols 设置为 false 会通过将 DebugType 更改为 None 来抑制生成 PDB。

如果你当前有一个预期会创建 PDB 的脚本,并且升级到 .NET 8 或更高版本时行为会发生更改,请检查脚本是否包含 -p:DebugSymbols=false

旧行为

-p:DebugSymbols=false 未抑制生成 PDB。

新行为

-p:DebugSymbols=false 将抑制生成 PDB。

引入的版本

.NET 8

更改类型

此更改为行为更改

更改原因

此更改符合现有文档和用户期望。 以前的行为经常导致混淆。

如果要生成 PDB,请勿在命令行上指定 -p:DebugSymbols=false。 只需删除该属性,即可再次生成 PDB 文件。

受影响的 API

不适用