StripSymbols 預設為 true
當 .NET 7 引進原生 AOT 部署時,它也會引進 StripSymbols
屬性,選擇性地允許從 Linux 上產生的可執行檔移除偵錯符號到個別的檔案中。 屬性的預設值為 false
。 在 .NET 8 中,預設值已變更為 true
。
先前的行為
使用 PublishAOT
時,Linux 上的偵錯符號預設會放入產生的可執行檔中,並選擇加入選項以將它們放入個別的 .dbg 檔案中。
新的行為
使用 PublishAOT
時,Linux 上的偵錯符號預設會放在 .dbg 檔案中,並退出宣告選項將它們放入可執行檔中。
導入的版本
.NET 8 Preview 4
變更原因
根據意見反應,我們判斷 .NET 使用者偏好 。NET 符號慣例,而不是平台原生慣例。 不過,無法探索到符號的等量選項。
建議的動作
- 如果您依賴偵錯符號出現在主要可執行檔中,請將
<StripSymbols>false</StripSymbols>
新增至專案檔以還原先前的行為。 - 如果您選擇使用新的預設值,請確認 .dbg 檔案中的偵錯符號是否已正確封存,如果您預期需要偵錯產生的可執行檔。
受影響的 API
無。