Freigeben über


Installiere einen Paketmanager für PowerShell

Wenn du PowerShell 6.0 oder später benutzt, hast du bereits eine neuere Version von PowerShellGet und PackageManagement installiert. Du solltest sicherstellen, dass du die neuesten Versionen dieser Module benutzt.

Wenn du PowerShell 7.4 oder später benutzt, hast du auch Microsoft.PowerShell.PSResourceGet installiert. Microsoft.PowerShell.PSResourceGet ist die neue Paketverwaltungslösung für PowerShell. Mit diesem Modul benötigen Sie PowerShellGet und PackageManagement nicht mehr. Es ist parallel zu den bestehenden PowerShellGet - und PackageManagement-Modulen installiert.

Windows PowerShell wird mit Version 1.0.0.1 von PowerShellGet und PackageManagement ausgeliefert. Wenn Sie Windows PowerShell 5.1 verwenden, müssen Sie auf die neueste Version von PowerShellGet und PackageManagement aktualisieren. Alle Versionen von PowerShellGet v1.x werden nicht mehr unterstützt.

Verwenden Sie die folgenden Anweisungen, um diese Module zu installieren oder auf die neuesten Versionen zu aktualisieren.

Schritt 1: TLS 1.2 aktivieren

Um auf die PowerShell-Galerie zuzugreifen, müssen Sie Transport Layer Security (TLS) 1.2 oder höher verwenden. Verwenden Sie den folgenden Befehl, um TLS 1.2 in Ihrer PowerShell-Sitzung zu aktivieren.

[Net.ServicePointManager]::SecurityProtocol =
    [Net.ServicePointManager]::SecurityProtocol -bor
    [Net.SecurityProtocolType]::Tls12

Füge diesen Befehl zu deinem PowerShell-Profilskript hinzu, um sicherzustellen, dass TLS 1.2 für jede PowerShell-Sitzung konfiguriert ist. Weitere Informationen zu Profilen finden Sie unter about_Profiles.

Schritt 2: Überprüfen Sie die installierten Versionen

Um die aktuell installierten Versionen der Module zu überprüfen, führen Sie folgenden Befehl aus:

$Names = @('PowerShellGet', 'PackageManagement', 'Microsoft.PowerShell.PSResourceGet')
Get-Module -Name $Names -ListAvailable

In Windows PowerShell 5.1 auf einem neu installierten Windows-System sollten Sie folgende Ausgabe erhalten:

    Directory: C:\Program Files\WindowsPowerShell\Modules


ModuleType Version  Name               ExportedCommands
---------- -------  ----               ----------------
Binary     1.0.0.1  PackageManagement  {Find-Package, Get-Package, ...
Script     1.0.0.1  PowerShellGet      {Install-Module, Find-Module, ...

Wenn die PowerShellGet-Version neuer 1.0.0.1 ist, kannst du nach Updates suchen und die neueste Version installieren.

Wenn Sie die Version 1.0.0.1noch ausführen, müssen Sie die Schritte befolgen, damit PowerShellGet einen aktualisierten NuGet-Anbieter und das nuget.exe Kommandozeilen-Tool installieren kann. Fahren Sie mit dem nächsten Schritt fort.

Schritt 3: Prüfen Sie auf Updates

Um die neuesten Versionen der Module aus der PowerShell-Galerie zu überprüfen, führen Sie folgenden Befehl aus:

$Names = @('PowerShellGet', 'PackageManagement', 'Microsoft.PowerShell.PSResourceGet')
Find-Module -Name $Names -Repository PSGallery

Sie sollten ein Ergebnis erhalten, das dem folgenden ähnelt:

Version   Name                                Repository   Description
-------   ----                                ----------   -----------
1.4.8.1   PackageManagement                   PSGallery    PackageManagement (a.k.a. OneGet) is a n…
2.2.5     PowerShellGet                       PSGallery    PowerShell module with commands for disc…
1.1.1     Microsoft.PowerShell.PSResourceGet  PSGallery    PowerShell module with commands for disc…

Schritt 4: Aktualisieren Sie NuGet-Komponenten (falls erforderlich)

Ein aktualisierter NuGet-Anbieter wird durch PowerShellGet-Befehle benötigt, um mit der PowerShell-Galerie zu arbeiten. Die Befehle Publish-* nutzen nuget.exe oder dotnet.exe veröffentlichen Ressourcen. Wenn keines der Tools verfügbar ist, wird PowerShellGet installiert.nuget.exe Wenn du noch die Version 1.0.0.1 von PowerShellGet benutzt, wird du aufgefordert, Find-Module den NuGet-Anbieter zu installieren. Geben Sie Y ein, um den Anbieter zu installieren.

NuGet provider is required to continue
PowerShellGet requires NuGet provider version '2.8.5.201' or newer to interact with NuGet
-based repositories. The NuGet provider must be available in 'C:\Program Files\PackageMan
agement\ProviderAssemblies' or 'C:\Users\user1\AppData\Local\PackageManagement\ProviderAs
semblies'. You can also install the NuGet provider by running 'Install-PackageProvider -N
ame NuGet -MinimumVersion 2.8.5.201 -Force'. Do you want PowerShellGet to install and imp
ort the NuGet provider now?
[Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"): Y
VERBOSE: Installing NuGet provider.

Wenn du Y antwortest, installiert PowerShellGet den NuGet-Anbieter und das nuget.exe Kommandozeilen-Tool (falls nötig).

Schritt 5: Installieren Sie die neueste Version

Um die neuesten Versionen dieser Module zu installieren, führen Sie Folgendes aus:

Install-Module PowerShellGet -Repository PSGallery -Force -AllowClobber
Install-Module Microsoft.PowerShell.PSResourceGet -Repository PSGallery

Hinweis

Wenn du PowerShellGet installierst, wird automatisch die neueste Version von PackageManagement installiert.