Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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 systemie PublishAOTsymbole debugowania na Linuksie są domyślnie umieszczane w pliku .dbg, ale można zrezygnować z tej opcji i umieścić je w pliku wykonywalnym.
Wersja wprowadzona
.NET 8 (wersja zapoznawcza 4)
Przyczyna zmiany
Na podstawie opinii ustaliliśmy, że użytkownicy .NET wolą konwencję symboli .NET zamiast konwencji natywnej dla platformy. Jednak opcja usuwania symboli nie była wystarczająco odnajdywalna.
Zalecana akcja
- 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.
Interfejsy API, których dotyczy problem
Żaden.