Partilhar via


O padrão StripSymbols é true

Quando o .NET 7 introduziu a implantação do AOT nativo, ele também introduziu a StripSymbols propriedade que, opcionalmente, permite que os símbolos de depuração sejam removidos do executável produzido no Linux para um arquivo separado. O valor padrão da propriedade era false. No .NET 8, o valor padrão foi alterado para true.

Comportamento anterior

Com PublishAOTo , os símbolos de depuração no Linux foram colocados no executável produzido por padrão, com uma opção opt-in para colocá-los em um arquivo .dbg separado.

Novo comportamento

Com PublishAOTo , os símbolos de depuração no Linux são colocados em um arquivo .dbg por padrão, com uma opção de exclusão para colocá-los no executável.

Versão introduzida

.NET 8 Visualização 4

Razão para a alteração

Com base nos comentários, determinamos que os usuários do .NET preferem o . Convenção de símbolos NET em vez da convenção nativa da plataforma. No entanto, a opção de retirar os símbolos não foi suficientemente detetável.

  • Se você confiar em símbolos de depuração para estar presente no executável principal, adicione <StripSymbols>false</StripSymbols> ao seu arquivo de projeto para restaurar o comportamento anterior.
  • Se você optar por usar o novo padrão, verifique se os símbolos de depuração nos arquivos .dbg estão arquivados corretamente se você espera que precise depurar os executáveis gerados.

APIs afetadas

Nenhum.