Řešení nativních knihoven pro Linux už nepoužívá netcoredeps

Od verze .NET 8 již aplikace pro Linux nehledají nativní knihovny v podadresáři netcoredeps.

Verze byla představena

.NET 8

Předchozí chování

V dřívějších verzích .NET aplikace pro Linux vyhledaly nativní knihovny v podadresáři umístěném netcoredeps vedle spustitelného souboru aplikace. Toto chování se vztahovalo na všechna načtení nativních knihoven, včetně uživatelských definic platformových volání (p/invokes).

Nové chování

V .NET 8 a novějších verzích aplikací pro Linux již aplikace nehledají nativní knihovny v podadresáři netcoredeps. Řešení nativní knihovny se teď řídí standardními mechanismy bez nutnosti spoléhat se na tento podadresář.

Typ zásadní změny

Jedná se o změnu chování.

Důvod změny

Chování netcoredeps bylo původně zavedeno pro zpracování složitých závislostí na knihovnách třetích stran ve starších verzích .NET. .NET 8+ už toto chování nevyžaduje kvůli vylepšenému zpracování závislostí. Mechanismus navíc není v souladu s doporučenými postupy pro platformy ELF.

Další informace najdete v tématu Problém Na GitHubu #114393.

Pokud vaše aplikace spoléhala na netcoredeps podadresář pro P/Invoke nebo řešení vlastní nativní knihovny, použijte následující alternativy:

Ovlivněná rozhraní API