更新用于 Windows PowerShell 5.1 的 PowerShellGet
Windows PowerShell 5.1 预安装了 1.0.0.1 版 PowerShellGet 和 PackageManagement。 此版本的 PowerShellGet 功能有限,必须更新才能使用 PowerShell 库。 若要获得支持,必须更新到最新版本。
先决条件
PowerShellGet 需要 .NET Framework 4.5 或更高版本。 有关详细信息,请参阅安装面向开发人员的 .NET Framework。
若要访问 PowerShell 库,必须使用传输层安全性 (TLS) 1.2 或更高版本。 使用以下命令在 PowerShell 会话中启用 TLS 1.2。
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12
将此命令添加到 PowerShell 配置文件脚本,以确保为每个 PowerShell 会话配置 TLS 1.2。 有关配置文件的详细信息,请参阅 about_Profiles。
安装最新版本的 PowerShellGet
PowerShellGet 模块包含用于安装和更新模块的 cmdlet:
Install-Module
安装最新版(非预发行版)模块。Update-Module
如果模块版本比当前安装的模块更新,则安装最新的 (非预发行版) 版本。 但是,仅当以前的版本是使用Install-Module
安装的,此 cmdlet 才有效。
若要更新预安装的模块,必须使用 Install-Module
。 从 PowerShell 库安装新版本后,可使用 Update-Module
安装较新版本。
Windows PowerShell 5.1 附带了 PowerShellGet 版本 1.0.0.1,其中不包括 NuGet 提供程序。 使用 PowerShell 库时,PowerShellGet 需要该提供程序。
备注
必须从权限提升的 PowerShell 会话运行以下命令。 右键单击 PowerShell 图标,然后选择“以管理员身份运行”以启动提升的会话。
可通过以下两种方式安装 NuGet 提供程序:
使用
Install-PackageProvider
在安装其他模块之前安装 NuGet运行以下命令以安装 NuGet 提供程序。
Install-PackageProvider -Name NuGet -Force
安装提供程序后,应能够在 PowerShell 库中使用任何 PowerShellGet cmdlet。
让
Install-Module
提示你安装 NuGet 提供程序以下命令尝试在没有 NuGet 提供程序的情况下安装更新的 PowerShellGet 模块。
Install-Module PowerShellGet -AllowClobber -Force
Install-Module
提示你安装 NuGet 提供程序。 键入 Y 以安装该提供程序。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\PackageManagement\ProviderAssemblies' or 'C:\Users\user1\AppData\Local\PackageManagement\ProviderAssemblies'. You can also install the NuGet provider by running 'Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force'. Do you want PowerShellGet to install and import the NuGet provider now? [Y] Yes [N] No [S] Suspend [?] Help (default is "Y"): Y VERBOSE: Installing NuGet provider.
安装 PowerShellGet 后
安装新版本的 PowerShellGet 后,应打开新的 PowerShell 会话。 使用 PowerShellGet cmdlet 时,PowerShell 会自动加载最新版本的模块。
我们还建议将 PowerShell 库注册为受信任的存储库。 请使用以下命令:
Set-PSRepository -Name PSGallery -InstallationPolicy Trusted
有关详细信息,请参阅 Set-PSRepository。