Install-PackageProvider

Устанавливает один или несколько поставщиков пакетов управления пакетами.

Синтаксис

Install-PackageProvider
       [-Name] <String[]>
       [-RequiredVersion <String>]
       [-MinimumVersion <String>]
       [-MaximumVersion <String>]
       [-Credential <PSCredential>]
       [-Scope <String>]
       [-Source <String[]>]
       [-Proxy <Uri>]
       [-ProxyCredential <PSCredential>]
       [-AllVersions]
       [-Force]
       [-ForceBootstrap]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Install-PackageProvider
       [-Scope <String>]
       [-InputObject] <SoftwareIdentity[]>
       [-Proxy <Uri>]
       [-ProxyCredential <PSCredential>]
       [-AllVersions]
       [-Force]
       [-ForceBootstrap]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Описание

Командлет Install-PackageProvider устанавливает соответствующие поставщики управления пакетами, доступные в источниках пакетов, зарегистрированных в PowerShellGet. По умолчанию сюда входят модули, доступные в коллекции Windows PowerShell с тегом PackageManagement. Поставщик управления пакетами PowerShellGet используется для поиска поставщиков в этих репозиториях.

Этот командлет также устанавливает соответствующие поставщики управления пакетами, доступные с помощью начального приложения управления пакетами.

Этот командлет также устанавливает соответствующие поставщики управления пакетами, доступные в хранилище BLOB-объектов Azure для управления пакетами. Используйте поставщик начального загрузчика, чтобы найти и установить их.

Для первого выполнения PackageManagement требуется подключение к Интернету для скачивания поставщика пакетов NuGet. Однако если у компьютера нет подключения к Интернету и вам нужно использовать поставщик NuGet или PowerShellGet, их можно скачать на другой компьютер и скопировать на целевой компьютер. Для этого сделайте следующее.

  1. Запустите Install-PackageProvider -Name NuGet -RequiredVersion 2.8.5.201 -Force , чтобы установить поставщик с компьютера с подключением к Интернету.
  2. После установки можно найти поставщика, установленного в $env:ProgramFiles\PackageManagement\ProviderAssemblies\<ProviderName>\<ProviderVersion> или $env:LOCALAPPDATA\PackageManagement\ProviderAssemblies\<ProviderName>\<ProviderVersion>.
  3. Поместите папку <ProviderName> , которая в данном случае является папкой NuGet, в соответствующее расположение на целевом компьютере. Если целевой компьютер является сервером Nano Server, необходимо запустить Install-PackageProvider с сервера Nano Server, чтобы скачать правильные двоичные файлы NuGet.
  4. Перезапустите PowerShell, чтобы автоматически загрузить поставщик пакетов. Кроме того, выполните команду Get-PackageProvider -ListAvailable , чтобы получить список всех поставщиков пакетов, доступных на компьютере. Затем используйте для Import-PackageProvider -Name NuGet -RequiredVersion 2.8.5.201 импорта поставщика в текущий сеанс Windows PowerShell.

Примеры

Пример 1. Установка поставщика пакетов из коллекция PowerShell

Эта команда устанавливает поставщик пакетов GistProvider из коллекция PowerShell.

Install-PackageProvider -Name "GistProvider" -Verbose

Пример 2. Установка указанной версии поставщика пакетов

В этом примере устанавливается указанная версия поставщика пакетов NuGet.

Первая команда находит все версии поставщика пакета с именем NuGet. Вторая команда устанавливает указанную версию поставщика пакетов NuGet.

Find-PackageProvider -Name "NuGet" -AllVersions
Install-PackageProvider -Name "NuGet" -RequiredVersion "2.8.5.216" -Force

Пример 3. Поиск поставщика и его установка

В этом примере используется Find-PackageProvider конвейер и для поиска поставщика Gist и его установки.

Find-PackageProvider -Name "GistProvider" | Install-PackageProvider -Verbose

Пример 4. Установка поставщика в папку модуля текущего пользователя

Эта команда устанавливает поставщик пакета в , $env:LOCALAPPDATA\PackageManagement\ProviderAssemblies чтобы использовать его может только текущий пользователь.

Install-PackageProvider -Name GistProvider -Verbose -Scope CurrentUser

Параметры

-AllVersions

Указывает, что этот командлет устанавливает все доступные версии поставщика пакетов. По умолчанию Install-PackageProvider возвращает только самую высокую доступную версию.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Запрос подтверждения перед выполнением командлета.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Указывает учетную запись пользователя, которая имеет разрешение на установку поставщиков пакетов.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Указывает, что этот командлет принудительно выполняет все действия с этим командлетом, которые могут быть принудительными. В настоящее время это означает, что параметр Force действует так же, как и параметр ForceBootstrap .

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ForceBootstrap

Указывает, что этот командлет автоматически устанавливает поставщик пакетов.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Задает объект SoftwareIdentity . Find-PackageProvider Используйте командлет , чтобы получить объект SoftwareIdentity для передачи в Install-PackageProvider.

Type:Microsoft.PackageManagement.Packaging.SoftwareIdentity[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-MaximumVersion

Указывает максимально допустимую версию поставщика пакета, который требуется установить. Если этот параметр не добавлен, Install-PackageProvider устанавливает самую высокую доступную версию поставщика.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MinimumVersion

Указывает минимальную допустимую версию поставщика пакета, который требуется установить. Если этот параметр не добавлен, Install-PackageProvider устанавливает самую высокую доступную версию пакета, которая также удовлетворяет всем требованиям, заданным параметром MaximumVersion .

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Указывает одно или несколько имен модулей поставщика пакетов. Разделите несколько имен пакетов запятыми. Подстановочные знаки не поддерживаются.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Proxy

Указывает прокси-сервер для запроса, а не подключение напрямую к интернет-ресурсу.

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ProxyCredential

Указывает учетную запись пользователя, имеющую разрешение на использование прокси-сервера, который задается параметром Proxy.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequiredVersion

Указывает точную разрешенную версию поставщика пакета, который требуется установить. Если этот параметр не добавлен, Install-PackageProvider устанавливает самую высокую доступную версию поставщика, которая также соответствует максимальной версии, заданной параметром MaximumVersion .

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Scope

Указывает область установки поставщика. Допустимые значения для этого параметра:

  • AllUsers — устанавливает поставщики в расположении, доступном для всех пользователей компьютера. По умолчанию это $env:ProgramFiles\PackageManagement\ProviderAssemblies.

  • CurrentUser — устанавливает поставщиков в расположении, где они доступны только текущему пользователю. По умолчанию это $env:LOCALAPPDATA\PackageManagement\ProviderAssemblies.

Type:String
Accepted values:CurrentUser, AllUsers
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Source

Указывает один или несколько источников пакетов. Get-PackageSource Используйте командлет , чтобы получить список доступных источников пакетов.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Входные данные

Microsoft.PackageManagement.Packaging.SoftwareIdentity

Вы можете передать объект SoftwareIdentity в этот командлет. Используйте для Find-PackageProvider получения объекта SoftwareIdentity , который можно передать в Install-PackageProvider.

Примечания

Важно!

Начиная с апреля 2020 года коллекция PowerShell не поддерживает протокол TLS (Transport Layer Security) версий 1.0 и 1.1. Если вы не используете TLS 1.2 или более поздней версии, при попытке доступа к коллекции PowerShell возникнет ошибка. Чтобы проверить, используется ли TLS 1.2, выполните следующую команду:

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

Дополнительные сведения см. в объявлении в блоге, посвященном PowerShell.