Compartilhar via


Erro do NuGet NU1008

Os seguintes itens PackageReference não podem definir um valor para Version: PackageName. Os projetos que usam o Gerenciamento Central de Pacotes devem definir um valor de versão em um item PackageVersion.

Questão

Um projeto é configurado para usar o Gerenciamento de Pacotes Do NuGet Central e um <PackageReference /> item é definido que especifica um valor para o Version atributo:

<ItemGroup>
  <PackageReference Include="PackageName" Version="5.1.0" />
</ItemGroup>

Como alternativa, um <PackageReference /> item é definido com um elemento filho <Version /> que tem um valor especificado:

<ItemGroup>
  <PackageReference Include="PackageName">
    <Version>5.1.0</Version>
  </PackageReference>
</ItemGroup>

Os projetos configurados para usar o Gerenciamento Central de Pacotes não devem definir uma versão nos <PackageReference /> itens. A versão deve ser definida em um item correspondente <PackageVersion /> com o mesmo identificador no arquivo Directory.Packages.props .

Solução

  • Remova o Version atributo ou o elemento filho <Version /> do <PackageReference /> item:

    <ItemGroup>
      <PackageReference Include="PackageName" />
    </ItemGroup>
    
  • Defina um <PackageVersion /> item que especifica a versão no arquivo Directory.Packages.props com o mesmo identificador que o <PackageReference /> item:

    <ItemGroup>
      <PackageVersion Include="PackageName" Version="5.0.1" />
    </ItemGroup>
    

Como alternativa, o Gerenciamento Central de Pacotes permite substituir versões de pacote definidas centralmente. Consulte Substituir versões do pacote para obter mais informações.

Observação

Observe que metadados como IncludeAssets, PrivateAssets etc. devem permanecer no item PackageReference.