AZFW0109: O projeto gerado não deve ser construído

Item Valor
ID da regra AZFW0109
Categoria Sdk
Severity Warning

Cause

O alvo Build está a ser executado no projeto azure_functions.g.csproj gerado. Este projeto não se destina a ser compilado diretamente; em vez disso, é utilizado apenas para efetuar o restauro e resolver o conteúdo da extensão.

Descrição da regra

O projeto gerado não se destina a ser compilado diretamente, mas sim a ser utilizado apenas para restaurar e resolver o conteúdo da extensão. Construir resultará num aviso.

Como Corrigir

Diagnostique o que está a fazer com que o projeto gerado (azure_functions.g.csproj) seja compilado diretamente. Uma causa comum é um ficheiro de travessia ou um ficheiro dirs.proj que usa padrões glob para detetar projetos, capturando involuntariamente o projeto gerado. O registo binário do MSBuild pode ser útil para identificar porquê/como azure_functions.g.csproj está a ser construído.

Excluir de um padrão ProjectReference glob

Se o teu projeto de percurso usar um padrão glob para incluir projetos, adiciona um Exclude para saltar o ficheiro gerado:

<ItemGroup>
  <ProjectReference Include="**/*.csproj" Exclude="**/azure_functions.g.csproj" />
</ItemGroup>

Remover um ProjectReference específico

Se o projeto gerado foi adicionado como referência explícita, remova a ProjectReference entrada que aponta para ele:

  <ItemGroup>
-   <ProjectReference Include="path/to/azure_functions.g.csproj" />
  </ItemGroup>

Remover os itens correspondentes ProjectReference condicionalmente

Se não conseguir modificar facilmente o globo ou a inclusão explícita, pode remover os itens correspondentes depois de terem sido resolvidos:

<ItemGroup>
  <ProjectReference Remove="@(ProjectReference)" Condition="'%(Filename)%(Extension)' == 'azure_functions.g.csproj'" />
</ItemGroup>

Quando Suprimir Avisos

A supressão não é recomendada. Recomenda-se identificar o que está a causar a construção deste projeto e impedi-lo.