Import-PackageProvider

将包管理包提供程序添加到当前会话。

语法

Import-PackageProvider
      [-Name] <String[]>
      [-RequiredVersion <String>]
      [-MinimumVersion <String>]
      [-MaximumVersion <String>]
      [-Force]
      [-ForceBootstrap]
      [<CommonParameters>]

说明

Import-PackageProvider cmdlet 将一个或多个包提供程序添加到当前会话。 导入的提供程序必须安装在本地计算机上。

若要获取可用提供程序的列表,请运行 Get-PackageProvider -ListAvailable。 请注意,包提供程序名称可能不同于其模块名称。

由于安全原因, PackageManagement 要求基于 C# 的提供程序包含一个 provider.manifest。 有关如何使用provider.manifest注入生成提供程序的详细信息,请参阅项目.csproj文件。https://github.com/oneget/oneget

示例

示例 1:从本地计算机导入包提供程序

PS C:\> Import-PackageProvider -Name "Nuget"

此命令在本地计算机上安装 Nuget 提供程序后导入该提供程序。

示例 2:导入包提供程序的特定版本

PS C:\> Find-PackageProvider -Name "Nuget" -AllVersions
Install-PackageProvider -Name "Nuget" -RequiredVersion "2.8.5.201" -Force
Get-PackageProvider -ListAvailable
Import-PackageProvider -Name "Nuget" -RequiredVersion "2.8.5.201" -Verbose

此命令查找、安装和导入 Nuget 包提供程序的特定版本。

参数

-Force

强制命令运行而不要求用户确认。 重新导入包提供程序。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ForceBootstrap

指示此 cmdlet 强制包管理自动安装包提供程序。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-MaximumVersion

指定要导入的包提供程序的最大允许版本。 如果未添加此参数, Import-PackageProvider 则导入提供程序的最高可用版本。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-MinimumVersion

指定要导入的包提供程序的最低允许版本。 如果不添加此参数, Import-PackageProvider 则导入包的最高可用版本,该版本也满足使用 MaximumVersion 参数指定的任何最大版本。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Name

指定一个或多个包提供程序名称。 不允许使用通配符。

类型:String[]
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-RequiredVersion

指定要导入的包提供程序的确切版本。 如果不添加此参数, Import-PackageProvider 则导入提供程序的最高可用版本,该版本也满足使用 MaximumVersion 参数指定的任何最大版本。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输入

Microsoft.PackageManagement.Implementation.PackageProvider

可以通过管道将返回的 Get-PackageProviderPackageProvider 对象传递给 Import-PackageProvider

备注

重要

截至 2020 年 4 月,PowerShell 库不再支持传输层安全性(TLS)版本 1.0 和 1.1。 如果未使用 TLS 1.2 或更高版本,则尝试访问 PowerShell 库时会收到错误。 使用以下命令确保使用的是 TLS 1.2:

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

有关详细信息,请参阅 PowerShell 博客中的 公告