Compartilhar via


NETSDK1005 e NETSDK1047: Arquivo de ativo está faltando no destino

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

Quando o SDK do .NET emite o erro NETSDK1005 ou NETSDK1047, o arquivo de ativos do projeto não tem informações sobre uma das estruturas de destino. O NuGet grava um arquivo chamado project.assets.json na pasta obj, que é usado pelo SDK do .NET para obter informações sobre pacotes para passar para o compilador. No .NET 5, o NuGet adicionou um novo campo chamado TargetFrameworkAlias, portanto, versões anteriores do MSBuild ou NuGet geram um arquivo de ativos sem o novo campo. Para mais informações, consulte o erro NETSDK1005.

Veja algumas ações para tentar resolver o erro:

  • Verifique se você está usando o MSBuild versão 16.8 ou posterior e o NuGet versão 5.8 ou posterior e restaure o projeto (execute dotnet restore) depois de atualizar as ferramentas. Ao usar o NuGet versão 5.8 ou posterior, deverá 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 depois de instalar a 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.

  • Verifique se o valor de destino ausente está incluído na propriedade TargetFrameworks do projeto.

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

  • Se você estiver tentando executar um Aplicativo Maui em um Simulador do Android, abra SDKs e Ferramentas do Android e adicione as plataformas ausentes nas guias Plataformas e Ferramentas.