NuGet-fel NU1009

Följande PackageReference-objekt definieras implicit och kan inte definiera ett PackageVersion-objekt: PackageName. Projekt som använder central pakethantering kräver att implicita paketversioner anges av packagereference-objektet.

Problematik

Ett projekt har konfigurerats för att använda NuGet Central Package Management och ett <PackageVersion /> objekt definieras i filen Directory.Packages.props för ett paket som är implicit definierat. Implicit definierade paket deklareras vanligtvis av en SDK för att inkludera paket åt dig. För dessa paket styr ägaren av SDK:t den version som används och en användare bör inte definiera en version med Central Package Management.

<ItemGroup>
  <PackageReference Include="Microsoft.NETCore.App" Version="9.0.0" IsImplicitlyDefined="true" />
</ItemGroup>

Lösning

  • PackageVersion Ta bort objektet från filen Directory.Packages.props som motsvarar det implicit definierade paketet:

    <ItemGroup>
      <PackageVersion Include="Microsoft.NETCore.App" Version="1.0.0" />
    </ItemGroup>
    

Anmärkning

Med vissa SDK:er kan du åsidosätta den implicit definierade paketversionen genom att ange en specifik MSBuild-egenskap för paketet och SDK:t kan ha dokumentation om hur du gör det.