Freigeben über


NETSDK1064: Paket nicht gefunden

Dieser Artikel gilt für: ✔️ .NET Core 2.1.100 SDK und höhere Versionen

Dieser Fehler tritt auf, wenn die Buildtools ein NuGet-Paket, das zum Erstellen eines Projekts benötigt wird, nicht finden können. Dies ist normalerweise auf ein Problem bei der Paketwiederherstellung zurückzuführen. Die vollständige Fehlermeldung ähnelt dem folgenden Beispiel:

NETSDK1064: Das Paket 'Paketname', Version x.x.x wurde nicht gefunden. Unter Umständen ist es seit der Ausführung von „nuget restore“ gelöscht worden. Ansonsten ist es möglich, dass „nuget restore“ nur teilweise abgeschlossen wurde. Dies lag möglicherweise an einer Beschränkung der maximalen Pfadlänge.

Im Folgenden sind einige Maßnahmen aufgeführt, die Sie ergreifen können, um den Fehler zu beheben:

  • Fügen Sie dem Befehl MSBuild.exe die Option /restore hinzu. Verwenden Sie nicht /t:Restore;Build, da dies zu schwer erkennbaren Fehlern führen kann. Eine Alternative besteht in der Verwendung des Befehls dotnet build, da er automatisch eine Paketwiederherstellung durchführt.
  • Wenn Sie die Paketwiederherstellung mithilfe von Visual Studio 2019 oder MSBuild.exe durchführen, wird der Fehler möglicherweise durch eine Beschränkung der maximalen Pfadlänge verursacht. Weitere Informationen finden Sie unter Unterstützung von langen Pfaden (NuGet-CLI) und in NuGet/Home-Issue 3324.
  • Wenn Sie die Wiederherstellung mit nuget.exe (x86) und die Erstellung mit MSBuild.exe (x64) durchführen, kann dieser Fehler durch die nicht übereinstimmende Bitanzahl verursacht werden. Der Build kann die Pakete nicht finden, die von der Wiederherstellung laut eigener Angabe geladen wurden, da der Pfad in project.assets.json nicht in einem Vorgang mit unterschiedlicher Bitanzahl funktioniert. Zur Fehlerbehebung sollten Sie für die Wiederherstellung und die Erstellung Tools mit derselben Bitanzahl verwenden oder NuGet so konfigurieren, dass Pakete in einem Ordner wiederhergestellt werden, der nicht zwischen x86 und x64 virtualisiert wird. Weitere Informationen finden Sie in dotnet/core-Issue 4332.
  • Wenn Sie ein Docker-Image erstellen, müssen Sie sicherstellen, dass die Datei .dockerignore die Verzeichnisse bin und obj ignoriert. Weitere Informationen finden Sie unter NETSDK1064: Package DnsClient, 1.2.0 was not found.