Udostępnij za pośrednictwem


Właściwość StripSymbols domyślnie ma wartość true

Gdy platforma .NET 7 wprowadziła wdrożenie natywnego AOT, wprowadziła StripSymbols również właściwość, która opcjonalnie umożliwia usunięcie symboli debugowania z utworzonego pliku wykonywalnego w systemie Linux w osobnym pliku. Wartość domyślna właściwości to false. Na platformie .NET 8 wartość domyślna została zmieniona na true.

Poprzednie zachowanie

W programie PublishAOTsymbole debugowania w systemie Linux zostały domyślnie umieszczone w utworzonym pliku wykonywalnym, z opcją zgody na umieszczenie ich w osobnym pliku dbg .

Nowe zachowanie

W programie PublishAOTsymbole debugowania w systemie Linux są domyślnie umieszczane w pliku dbg z opcją rezygnacji, aby umieścić je w pliku wykonywalnym.

Wprowadzona wersja

.NET 8 (wersja zapoznawcza 4)

Przyczyna wprowadzenia zmiany

Na podstawie opinii ustaliliśmy, że użytkownicy platformy .NET wolą . Konwencja symboli NET zamiast konwencji natywnej dla platformy. Jednak opcja usuwania symboli nie była wystarczająco odnajdywalna.

  • Jeśli używasz symboli debugowania, które mają być obecne w głównym pliku wykonywalny, dodaj <StripSymbols>false</StripSymbols> do pliku projektu, aby przywrócić poprzednie zachowanie.
  • Jeśli zdecydujesz się użyć nowej wartości domyślnej, sprawdź, czy symbole debugowania w plikach dbg są prawidłowo archiwizowane, jeśli oczekujesz, że konieczne będzie debugowanie wygenerowanych plików wykonywalnych.

Dotyczy interfejsów API

Brak.