Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Systeemeigen Linux-bibliotheekresolutie gebruikt niet langer
Vanaf .NET 8 zoeken Linux-toepassingen niet langer in de netcoredeps submap naar systeemeigen bibliotheken.
Geïntroduceerde versie
.NET 8
Vorig gedrag
In eerdere versies van .NET hebben Linux-toepassingen gezocht naar systeemeigen bibliotheken in een netcoredeps submap die zich naast het uitvoerbare toepassingsbestand bevindt. Dit gedrag wordt toegepast op alle laden van systeemeigen bibliotheken, inclusief gebruikersgedefinieerde platformaanroepen (p/invokes).
Nieuw gedrag
In .NET 8 en hoger zoeken Linux-toepassingen niet langer in de netcoredeps submap naar systeemeigen bibliotheken. Systeemeigen bibliotheekresolutie volgt nu standaardmechanismen zonder gebruik te maken van deze submap.
Type van brekende verandering
Dit is een gedragsverandering.
Reden voor wijziging
Het netcoredeps gedrag is oorspronkelijk geïntroduceerd voor het verwerken van complexe afhankelijkheden van bibliotheken van derden in eerdere .NET-versies. .NET 8+ vereist dit gedrag niet meer vanwege verbeterde afhankelijkheidsafhandeling. Daarnaast is het mechanisme niet afgestemd op aanbevolen procedures voor ELF-platforms.
Zie GitHub-probleem #114393 voor meer informatie.
Aanbevolen actie
Als uw toepassing afhankelijk is van de netcoredeps submap voor p/invokes of aangepaste native bibliotheekresolutie, gebruik de volgende alternatieven:
- Implementeer een aangepast oplossingsmechanisme met behulp van een van de volgende opties:
- Als een
RPATHvereiste is in uw implementatie, wijzigt u het ELF-bestand expliciet met behulp van hetpatchelfhulpprogramma.