【问题标题】:dotnet publish CLI exclude .pdbdotnet 发布 CLI 排除 .pdb
【发布时间】:2022-06-17 05:54:39
【问题描述】:

在 .NET 7 中,我会这样做:

dotnet publish --self-contained --configuration Release --runtime win7-x64 --output myapp

如何防止.pdb 文件出现在结果中?理想情况下,只使用 CLI?

我可以采取任何其他步骤来减小结果大小吗?

【问题讨论】:

标签: c# .net asp.net-core asp.net-core-7.0 .net-7.0


【解决方案1】:

根据this GitHub issue,有两种方法可以禁用符号。

您可以编辑 .csproj 文件以添加这两个条目:

<DebugType>None</DebugType>
<DebugSymbols>False</DebugSymbols>

或者您可以将以下内容作为dotnet publish 命令的一部分传递:

/p:DebugType=None /p:DebugSymbols=false

例如:

dotnet publish /p:DebugType=None /p:DebugSymbols=false --self-contained --configuration Release --runtime win7-x64 --output myapp

【讨论】:

  • 我认为,这些属性与 build 有关,因此如果您运行 dotnet publish --no-build,它们将不起作用>
  • @Ilyan 是的,它们是 MSBuild 选项。我相信您也可以将相同的选项传递给dotnet build
【解决方案2】:

要禁用.pdb 文件仅供发布,请将其添加到您的Project.csproj

<PropertyGroup Condition="'$(Configuration)'=='Release'">
  <DebugSymbols>False</DebugSymbols>
  <DebugType>None</DebugType>
</PropertyGroup>

【讨论】:

    猜你喜欢
    • 2019-09-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-27
    • 2021-07-21
    • 2012-06-21
    • 2018-09-22
    • 2022-06-16
    • 1970-01-01
    相关资源
    最近更新 更多