NETSDK1005 och NETSDK1047: Tillgångsfilen saknar mål
Den här artikeln gäller för: ✔️ .NET Core 2.1.100 SDK och senare versioner
När .NET SDK utfärdar fel NETSDK1005 eller NETSDK1047 saknas information om projektets resursfil i något av dina målramverk. NuGet skriver en fil med namnet project.assets.json i mappen obj , och .NET SDK använder den för att hämta information om paket som ska skickas till kompilatorn. I .NET 5 lade NuGet till ett nytt fält med namnet TargetFrameworkAlias
, så tidigare versioner av MSBuild eller NuGet genererar en resursfil utan det nya fältet. Mer information finns i fel NETSDK1005.
Här följer några åtgärder som kan lösa felet:
Kontrollera att du använder MSBuild version 16.8 eller senare och NuGet version 5.8 eller senare och återställ projektet (kör
dotnet restore
) när du har uppdaterat dina verktyg. När du använder NuGet version 5.8 eller senare bör du använda Visual Studio 2019 version 16.8 eller senare, MSBuild version 16.8 eller senare och .NET 5 SDK eller senare.Om du får felet när du skapar ett projekt i Visual Studio 2019 för första gången efter att du har installerat version 16.8 eller när du har ändrat projektets målramverk skapar du projektet en andra gång.
Ta bort mappen obj innan du skapar projektet.
Kontrollera att det saknade målvärdet ingår i
TargetFrameworks
projektets egenskap.Om du skapar en Docker-avbildning kontrollerar du att .dockerignore-filen ignorerar bin - och obj-katalogerna . Mer information finns i GitHub pull request dotnet/docs #29530.
Om du försöker köra en Maui-app på en Android-simulator öppnar du Android SDK:er och verktyg och lägger till de saknade plattformarna under både fliken Plattformar och Verktyg.