dotnet restoredotnet restore

Dieser Artikel gilt für: ✔️ .NET Core 2.1 SDK und neuere VersionenThis article applies to: ✔️ .NET Core 2.1 SDK and later versions

nameName

dotnet restore: Stellt die Abhängigkeiten und Tools eines Projekts wieder herdotnet restore - Restores the dependencies and tools of a project.

ÜbersichtSynopsis

dotnet restore [<ROOT>] [--configfile <FILE>] [--disable-parallel]
    [-f|--force] [--force-evaluate] [--ignore-failed-sources]
    [--interactive] [--lock-file-path <LOCK_FILE_PATH>] [--locked-mode]
    [--no-cache] [--no-dependencies] [--packages <PACKAGES_DIRECTORY>]
    [-r|--runtime <RUNTIME_IDENTIFIER>] [-s|--source <SOURCE>]
    [--use-lock-file] [-v|--verbosity <LEVEL>]

dotnet restore -h|--help

BeschreibungDescription

Der Befehl dotnet restore verwendet NuGet zum Wiederherstellen von Abhängigkeiten sowie projektspezifischen Tools, die in der Projektdatei angegeben sind.The dotnet restore command uses NuGet to restore dependencies as well as project-specific tools that are specified in the project file. In den meisten Fällen müssen Sie nicht explizit den Befehl dotnet restore verwenden, da eine NuGet-Wiederherstellung bei Bedarf implizit ausgeführt wird, wenn Sie die folgenden Befehle ausführen:In most cases, you don't need to explicitly use the dotnet restore command, since a NuGet restore is run implicitly if necessary when you run the following commands:

Manchmal kann es unpraktisch sein, die implizite NuGet-Wiederherstellung mit diesen Befehlen auszuführen.Sometimes, it might be inconvenient to run the implicit NuGet restore with these commands. Zum Beispiel müssen einige automatisierte Systeme, wie etwa Buildsysteme, dotnet restore explizit aufrufen, um zu kontrollieren, wann die Wiederherstellung stattfindet, damit sie die Netzwerknutzung steuern können.For example, some automated systems, such as build systems, need to call dotnet restore explicitly to control when the restore occurs so that they can control network usage. Sie können das Flag --no-restore mit einem beliebigen dieser Befehle verwenden, um die implizite Wiederherstellung zu deaktivieren und eine implizite NuGet-Wiederherstellung zu verhindern.To prevent the implicit NuGet restore, you can use the --no-restore flag with any of these commands to disable implicit restore.

Angeben von FeedsSpecify feeds

Zum Wiederherstellen der Abhängigkeiten benötigt NuGet die Feeds, wo sich die Pakete befinden.To restore the dependencies, NuGet needs the feeds where the packages are located. Feeds werden normalerweise über die nuget.config-Konfigurationsdatei bereitgestellt.Feeds are usually provided via the nuget.config configuration file. Eine standardmäßige Konfigurationsdatei wird bereitgestellt, wenn das .NET Core SDK installiert sind.A default configuration file is provided when the .NET Core SDK is installed. Führen Sie eine der folgenden Schritte durch, um zusätzliche Feeds anzugeben:To specify additional feeds, do one of the following:

Sie können die nuget.config- -Feeds mit der -s-Option überschreiben.You can override the nuget.config feeds with the -s option.

Informationen zur Verwendung authentifizierter Feeds finden Sie unter Nutzen von Paketen aus authentifizierten Feeds.For information about how to use authenticated feeds, see Consuming packages from authenticated feeds.

Ordner für globale PaketeGlobal packages folder

Für Abhängigkeiten können Sie mithilfe des Arguments --packages angeben, wo die wiederhergestellten Pakete während der Wiederherstellung platziert werden.For dependencies, you can specify where the restored packages are placed during the restore operation using the --packages argument. Wenn nichts angegeben wurde, wird der Standardcache des NuGet-Pakets verwendet. Er befindet sich im Verzeichnis .nuget/packages im Basisverzeichnis des Benutzers auf allen Betriebssystemen.If not specified, the default NuGet package cache is used, which is found in the .nuget/packages directory in the user's home directory on all operating systems. Zum Beispiel /home/user1 unter Linux oder C:\Users\user1 unter Windows.For example, /home/user1 on Linux or C:\Users\user1 on Windows.

Projektspezifische ToolsProject-specific tooling

Für projektspezifische Tools stellt dotnet restore zunächst das Paket wieder her, in dem sich das Tool befindet, und danach die Abhängigkeiten des Tools gemäß seiner Projektdatei.For project-specific tooling, dotnet restore first restores the package in which the tool is packed, and then proceeds to restore the tool's dependencies as specified in its project file.

Unterschiede bei „nuget.config“nuget.config differences

Das Verhalten des Befehls dotnet restore wird durch Einstellungen in der nuget.config-Datei (falls vorhanden) beeinflusst.The behavior of the dotnet restore command is affected by the settings in the nuget.config file, if present. Das Festlegen von globalPackagesFolder in nuget.config platziert z. B. die wiederhergestellten NuGet-Pakete in den angegebenen Ordner.For example, setting the globalPackagesFolder in nuget.config places the restored NuGet packages in the specified folder. Dies ist eine Alternative zur Angabe der Option --packages im dotnet restore-Befehl.This is an alternative to specifying the --packages option on the dotnet restore command. Weitere Informationen finden Sie in der Referenz zu „nuget.config“.For more information, see the nuget.config reference.

Es gibt drei bestimmte Einstellungen, die von dotnet restore ignoriert werden:There are three specific settings that dotnet restore ignores:

  • bindingRedirectsbindingRedirects

    Bindungsumleitungen funktionieren nicht mit <PackageReference>-Elementen, und .NET Core unterstützt nur <PackageReference>-Elemente für NuGet-Pakete.Binding redirects don't work with <PackageReference> elements and .NET Core only supports <PackageReference> elements for NuGet packages.

  • solutionsolution

    Diese Einstellung ist spezifisch für Visual Studio und gilt nicht für .NET Core.This setting is Visual Studio specific and doesn't apply to .NET Core. .NET Core verwendet keine packages.config-Datei, aber stattdessen <PackageReference>-Elemente für NuGet-Pakete..NET Core doesn't use a packages.config file and instead uses <PackageReference> elements for NuGet packages.

  • trustedSignerstrustedSigners

    Diese Einstellung ist nicht anwendbar, da NuGet noch keine plattformübergreifende Überprüfung vertrauenswürdiger Pakete unterstützt.This setting isn't applicable as NuGet doesn't yet support cross-platform verification of trusted packages.

ArgumenteArguments

  • ROOT

    Optionaler Pfad zur wiederherzustellenden Projektdatei.Optional path to the project file to restore.

OptionenOptions

  • --configfile <FILE>

    Die NuGet-Konfigurationsdatei (nuget.config) für den Wiederherstellungsvorgang.The NuGet configuration file (nuget.config) to use for the restore operation.

  • --disable-parallel

    Deaktiviert paralleles Erstellen von mehreren Projekten.Disables restoring multiple projects in parallel.

  • --force

    Erzwingt das Auflösen aller Abhängigkeiten, auch wenn die letzte Wiederherstellung erfolgreich war.Forces all dependencies to be resolved even if the last restore was successful. Dieses Flag anzugeben, entspricht dem Löschen der Datei project.assets.json.Specifying this flag is the same as deleting the project.assets.json file.

  • --force-evaluate

    Erzwingt die Neubewertung aller Abhängigkeiten bei der Wiederherstellung, selbst wenn bereits eine Sperrdatei vorhanden ist.Forces restore to reevaluate all dependencies even if a lock file already exists.

  • -h|--help

    Druckt eine kurze Hilfe für den Befehl.Prints out a short help for the command.

  • --ignore-failed-sources

    Bei fehlerhaften Quellen nur warnen, wenn Pakete die Versionsanforderung erfüllen.Only warn about failed sources if there are packages meeting the version requirement.

  • --interactive

    Ermöglicht dem Befehl, anzuhalten und auf Benutzereingaben oder Aktionen zu warten (z.B. um die Authentifizierung abzuschließen).Allows the command to stop and wait for user input or action (for example to complete authentication). Ab .NET Core 2.1.400.Since .NET Core 2.1.400.

  • --lock-file-path <LOCK_FILE_PATH>

    Ausgabespeicherort, in den die Projektsperrdatei geschrieben wird.Output location where project lock file is written. Standardmäßig ist dies PROJECT_ROOT\packages.lock.json.By default, this is PROJECT_ROOT\packages.lock.json.

  • --locked-mode

    Lassen Sie keine Aktualisierung der Projektsperrdatei zu.Don't allow updating project lock file.

  • --no-cache

    Gibt an, dass keine HTTP-Anforderungen zwischengespeichert werdenSpecifies to not cache HTTP requests.

  • --no-dependencies

    Wenn Sie ein Projekt mit Projekt-zu-Projekt-Verweisen (P2P) wiederherstellen, stellen Sie das Stammprojekt wieder her und nicht die Verweise.When restoring a project with project-to-project (P2P) references, restores the root project and not the references.

  • --packages <PACKAGES_DIRECTORY>

    Gibt das Verzeichnis für wiederhergestellte Pakete an.Specifies the directory for restored packages.

  • -r|--runtime <RUNTIME_IDENTIFIER>

    Gibt eine Laufzeit für die Wiederherstellung des Pakets an.Specifies a runtime for the package restore. Wird für das Wiederherstellen von Paketen für Laufzeiten verwendet, die nicht explizit im <RuntimeIdentifiers>-Tag in der .csproj-Datei aufgeführt sind.This is used to restore packages for runtimes not explicitly listed in the <RuntimeIdentifiers> tag in the .csproj file. Eine Liste der Runtime-IDs (RIDs) finden Sie unter RID-Katalog.For a list of Runtime Identifiers (RIDs), see the RID catalog. Es können mehrere RIDs bereitgestellt werden, indem diese Option mehrmals angegeben wird.Provide multiple RIDs by specifying this option multiple times.

  • -s|--source <SOURCE>

    Gibt den URI der NuGet-Paketquelle an, die während des Wiederherstellungsvorgangs zu verwenden ist.Specifies the URI of the NuGet package source to use during the restore operation. Diese Einstellung überschreibt alle Quellen, die in den nuget.config-Dateien angegeben sind.This setting overrides all of the sources specified in the nuget.config files. Es können mehrere Quellen bereitgestellt werden, indem diese Option mehrmals angegeben wird.Multiple sources can be provided by specifying this option multiple times.

  • --use-lock-file

    Ermöglicht das Generieren und Verwenden einer Projektsperrdatei bei der Wiederherstellung.Enables project lock file to be generated and used with restore.

  • -v|--verbosity <LEVEL>

    Legt den Ausführlichkeitsgrad für den Befehl fest.Sets the verbosity level of the command. Zulässige Werte sind q[uiet], m[inimal], n[ormal], d[etailed] und diag[nostic].Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]. Der Standardwert ist minimalsein.Default value is minimal.

BeispieleExamples

  • Wiederherstellen von Abhängigkeiten und Tools für das Projekt im aktuellen Verzeichnis:Restore dependencies and tools for the project in the current directory:

    dotnet restore
    
  • Wiederherstellen von Abhängigkeiten und Tools für das Projekt app1 im vorgegebenen Pfad:Restore dependencies and tools for the app1 project found in the given path:

    dotnet restore ./projects/app1/app1.csproj
    
  • Wiederherstellen der Abhängigkeiten und Tools für das Projekt im aktuellen Verzeichnis mit dem bereitgestellten Dateipfad als Quelle:Restore the dependencies and tools for the project in the current directory using the file path provided as the source:

    dotnet restore -s c:\packages\mypackages
    
  • Wiederherstellen der Abhängigkeiten und Tools für das Projekt im aktuellen Verzeichnis mit den beiden bereitgestellten Dateipfaden als Quellen:Restore the dependencies and tools for the project in the current directory using the two file paths provided as sources:

    dotnet restore -s c:\packages\mypackages -s c:\packages\myotherpackages
    
  • Wiederherstellen von Abhängigkeiten und Tools für das Projekt im aktuellen Verzeichnis mit detaillierter Ausgabe:Restore dependencies and tools for the project in the current directory showing detailed output:

    dotnet restore --verbosity detailed