2016-03-05 33 views
5

Ich folge Get Started with the PowerShell Gallery, die besagt, dass das PowerShellGet-Modul in Windows 10 existiert (das ich verwende - Build 14721). Um zu bestätigen, ich bin mit Powershell v5:Install-PackageProvider wird nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren Programms erkannt

>$PSVersionTable 

Name       Value 
----       ----- 
PSVersion      5.0.14271.1000 
PSCompatibleVersions   {1.0, 2.0, 3.0, 4.0...} 
BuildVersion     10.0.14271.1000 
CLRVersion      4.0.30319.42000 
WSManStackVersion    3.0 
PSRemotingProtocolVersion  2.3 
SerializationVersion   1.1.0.1 

Get Started with the PowerShell Gallery Zustände:

PowerShellGet auch die NuGet Anbieter erfordert mit der Powershell-Gallery zu arbeiten. Sie werden aufgefordert, den NuGet Provider automatisch bei der ersten Verwendung von PowerShellGet zu installieren, wenn der NuGet Anbieter nicht in einer der folgenden Positionen ist: • $ env: Programme \ PackageManagement \ ProviderAssemblies
• $ env: LOCALAPPDATA \ PackageManagement \ ProviderAssemblies

ich habe nichts in diesen Orten:

>ls $env:LOCALAPPDATA\PackageManagement\ProviderAssemblies  
>ls $env:ProgramFiles\PackageManagement\ProviderAssemblies 
ls : Cannot find path 'C:\Program Files\PackageManagement\ProviderAssemblies' because it does not exist. 
At line:1 char:1 
+ ls $env:ProgramFiles\PackageManagement\ProviderAssemblies 
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo   : ObjectNotFound: (C:\Program File...viderAssemblies:String) [Get-ChildItem], ItemNotFoundException 
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand 

Get Started with the PowerShell Gallery dann heißt es:

Oder Sie können Install-PackageProvider -Name NuGet -Force ausführen, um den Download und die Installation des NuGet-Anbieters zu automatisieren.

Wenn ich versuche, dass:

>Install-PackageProvider -Name NuGet -Force 
Install-PackageProvider : The term 'Install-PackageProvider' is not recognized as the name of a cmdlet, function, script file, or operable program. 
correct and try again. 
At line:1 char:1 
+ Install-PackageProvider -Name NuGet -Force 
+ ~~~~~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo   : ObjectNotFound: (Install-PackageProvider:String) [], CommandNotFoundException 
    + FullyQualifiedErrorId : CommandNotFoundException 

ich sehr verwirrt bin. Ich habe PowerShell v5, aber es scheint, dass ich nicht alles habe, was da sein soll, nämlich PowerShellGet.

Kann jemand erklären warum?

+0

Betreiben Sie die Powershell-Konsole als Administrator? Standardmäßig glaube ich, dass die PS-Konsole oder ISE als eingeschränkter Benutzer ausgeführt wird. Klicken Sie mit der rechten Maustaste auf PowerShell im Startmenü und wählen Sie Als Administrator ausführen. – user4317867

+0

Ich habe gerade versucht, "Install-PackageProvider -Name NuGet -Force" als Admin auszuführen, das gleiche Ergebnis :( – jamiet

+0

Hat Ihr PS Console Titel 'Administrator:'? Haben Sie auch https://technet.microsoft.com/en- us/library/mt676543.aspx und versuchte mit 'Get-PackageProvider -ListAvailable', wenn ich in PS v5 auf Win 7 versuche, bekomme ich einen Fehler, der ListAvailable ist kein anerkannter Parameter – user4317867

Antwort

1

Dieser Fehler bedeutet, dass PowerShell das Modul nicht finden kann, zu dem Install-PackageProvider gehört. Install-PackageProvider ist ein Mitglied des PackageManagement-Moduls. Um dies zu überprüfen, führen Sie Get-Module

Get-Module -ListAvailable -Name PackageManagement 

Wenn dieser Fehler aus, müssen Sie sicherstellen, dass Sie die PackageManagement haben einen Ordner Ordner innerhalb Ihres $ env: PSModulePath. Hier finden Sie eine schnelle Möglichkeit, die einzelnen Ordner für den PackageManagement-Ordner durchzusehen.

$env:psmodulepath.Split(';') | foreach {gci $_ -filter '*packagemanagement*'} 

Wenn nichts kommt zurück, Sie haben nicht einmal die PackageManagement Modulordner überall dort, wo es automatisch importiert von Powershell sein kann.

Wenn das der Fall ist, würde ich empfehlen, PowerShell v5 RTM neu zu installieren.

+1

Danke Adam, habe auf Windows 10 Build 13279 aktualisiert und bekomme die gleichen Symptome. Haben Sie Ihren Link besucht (https://www.microsoft.com/en-us/download/details.aspx?id=50395) und (nicht überraschend) gibt es keine Option, WMF5.0 für Windows 10 herunterzuladen. Bin jetzt völlig ratlos . – jamiet

+0

oh, und: > Get-PackageProvider -ListAvailable Get-PackageProvider: Es wurde kein Parameter gefunden, der mit dem Parameternamen 'ListAvailable' übereinstimmt. – jamiet

+0

Sie müssten wahrscheinlich Programme/Funktionen zum Entfernen/Entfernen von PowerShell oder WMF5.0 verwenden, da es sich um eine gebündelte OS-Komponente handelt. – user4317867