将 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
不适用