Freigeben über


StripSymbols ist standardmäßig auf TRUE festgelegt

Als .NET 7 die native AOT-Bereitstellung einführte, wurde auch die StripSymbols-Eigenschaft eingeführt, die es optional ermöglicht, Debugsymbole aus der erzeugten ausführbaren Datei unter Linux in eine separate Datei zu entfernen. Der Standardwert der Eigenschaft war false. In .NET 8 hat sich der Standardwert in true geändert.

Vorheriges Verhalten

Mit PublishAOT wurden Debugsymbole unter Linux standardmäßig in die erzeugte ausführbare Datei eingefügt, mit der Option, sie in einer separaten DBG-Datei zu speichern.

Neues Verhalten

Mit PublishAOT werden Debugsymbole unter Linux standardmäßig in einer DBG-Datei abgelegt, mit einer Option zum Deaktivieren, um sie in der ausführbaren Datei abzulegen.

Eingeführt in Version

.NET 8 Vorschauversion 4

Grund für die Änderung

Aufgrund von Feedback haben wir festgestellt, dass .NET-Benutzer die Konvention der .NET-Symbole gegenüber der plattformspezifischen Konvention bevorzugen. Die Option zum Entfernen der Symbole war jedoch nicht ausreichend erkennbar.

  • Wenn Sie darauf angewiesen sind, dass die Debugsymbole in der Hauptdatei vorhanden sind, fügen Sie <StripSymbols>false</StripSymbols> in Ihre Projektdatei ein, um das vorherige Verhalten wiederherzustellen.
  • Wenn Sie sich dafür entscheiden, die neue Voreinstellung zu verwenden, überprüfen Sie, ob die Debugsymbole in den DBG-Dateien ordnungsgemäß archiviert sind, wenn Sie die generierten ausführbaren Dateien voraussichtlich debuggen müssen.

Betroffene APIs

Keine.