Partilhar via


NETSDK1005 e NETSDK1047: Arquivo de ativos está faltando destino

Este artigo aplica-se a: ✔️ SDK do .NET Core 2.1.100 e versões posteriores

Quando o SDK do .NET emite NETSDK1005 de erro ou NETSDK1047, o arquivo de ativos do projeto está faltando informações em uma de suas estruturas de destino. O NuGet grava um arquivo chamado project.assets.json na pasta obj e o SDK do .NET o usa para obter informações sobre pacotes a serem passados para o compilador. No .NET 5, o NuGet adicionou um novo campo chamado TargetFrameworkAlias, para que versões anteriores do MSBuild ou NuGet gerem um arquivo de ativos sem o novo campo. Para obter mais informações, consulte NETSDK1005 de erro.

Aqui estão algumas ações que você pode tomar que podem resolver o erro:

  • Certifique-se de que você está usando o MSBuild versão 16.8 ou posterior e o NuGet versão 5.8 ou posterior e restaure o projeto (executar dotnet restore) depois de atualizar suas ferramentas. Ao usar o NuGet versão 5.8 ou posterior, você deve usar o Visual Studio 2019 versão 16.8 ou posterior, o MSBuild versão 16.8 ou posterior e o SDK do .NET 5 ou posterior.

  • Se você receber o erro ao criar um projeto no Visual Studio 2019 pela primeira vez após a instalação da versão 16.8 ou depois de alterar a estrutura de destino do projeto, crie o projeto uma segunda vez.

  • Exclua a pasta obj antes de criar o projeto.

  • Certifique-se de que o valor de destino ausente está incluído na TargetFrameworks propriedade do seu projeto.

  • Se você estiver criando uma imagem do Docker, verifique se o arquivo .dockerignore ignora os diretórios bin e obj . Para obter mais informações, consulte GitHub pull request dotnet/docs #29530.

  • Se você estiver tentando executar um aplicativo Maui em um simulador Android, abra os SDKs e ferramentas do Android e adicione as plataformas ausentes na guia Plataformas e Ferramentas.