Powershell安装Nuget软件包
我正在尝试了解如何使用powershell脚本下载和安装NUnit包Powershell安装Nuget软件包,powershell,Powershell,我正在尝试了解如何使用powershell脚本下载和安装NUnit包 我尝试了Install-Package命令,但是对于NUGet-Package管理器控制台,这是理所当然的。有什么想法吗?您需要NuGet软件包提供商能够使用安装软件包找到并下载NUnit。我认为您遇到的问题是,如果您以前没有为PowerShell安装/配置NuGet软件包提供程序,则第一次运行类似于Install package NUnit的命令时,它将提示您是否要安装NuGet软件包提供程序 例如: Find-Packag
我尝试了
Install-Package
命令,但是对于NUGet-Package管理器控制台,这是理所当然的。有什么想法吗?您需要NuGet软件包提供商能够使用安装软件包找到并下载NUnit。我认为您遇到的问题是,如果您以前没有为PowerShell安装/配置NuGet软件包提供程序,则第一次运行类似于Install package NUnit
的命令时,它将提示您是否要安装NuGet软件包提供程序
例如:
Find-Package NUnit
WARNING: The specified PackageManagement provider 'NuGet' is not available.
Find-Package : No match was found for the specified search criteria and package name 'NUnit'.
At line:1 char:1
+ Find-Package NUnit
+ ~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Microsoft.Power...ets.FindPackage:FindPackage) [Find-Package], Exception
+ FullyQualifiedErrorId : NoMatchFoundForCriteria,Microsoft.PowerShell.PackageManagement.Cmdlets.FindPackage
但在配置了NuGet提供程序之后,它就可以正常工作了:
Find-Package -Name Nunit
Name Version Source Summary
---- ------- ------ -------
NUnit 3.2.0 nuget.org NUnit is a unit-testing framework for all .Net languages with a strong TDD focus.
您需要NuGet软件包提供商能够使用
Install package
查找和下载NUnit。我认为您遇到的问题是,如果您以前没有为PowerShell安装/配置NuGet软件包提供程序,则第一次运行类似于Install package NUnit
的命令时,它将提示您是否要安装NuGet软件包提供程序
例如:
Find-Package NUnit
WARNING: The specified PackageManagement provider 'NuGet' is not available.
Find-Package : No match was found for the specified search criteria and package name 'NUnit'.
At line:1 char:1
+ Find-Package NUnit
+ ~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Microsoft.Power...ets.FindPackage:FindPackage) [Find-Package], Exception
+ FullyQualifiedErrorId : NoMatchFoundForCriteria,Microsoft.PowerShell.PackageManagement.Cmdlets.FindPackage
但在配置了NuGet提供程序之后,它就可以正常工作了:
Find-Package -Name Nunit
Name Version Source Summary
---- ------- ------ -------
NUnit 3.2.0 nuget.org NUnit is a unit-testing framework for all .Net languages with a strong TDD focus.
我的答案建立在@Negorath的基础上。我相信他们遗漏了一些细节:
> Get-PackageProvider -ListAvailable
Name Version DynamicOptions
---- ------- --------------
msi 3.0.0.0 AdditionalArguments
msu 3.0.0.0
NuGet 2.8.5.208 Destination, ExcludeVersion, Scope, SkipDependencies, Headers, FilterOnTag, Contains, AllowPrereleaseVersions, ConfigFile, SkipValidate
PowerShellGet 1.0.0.1 PackageManagementProvider, Type, Scope, AllowClobber, SkipPublisherCheck, InstallUpdate, NoPathUpdate, Filter, Tag, Includes, DscResource, RoleCapability, Command, PublishLocation, ScriptSourceL... Programs 3.0.0.0 IncludeWindowsInstaller, IncludeSystemComponent
正如你所看到的,我有裸体。但是,如果您没有安装,您可以使用:
> Register-PackageSource -Name NuGet -ProviderName PowerShellGet -Verbose
VERBOSE: Repository details, Name = 'PSGallery', Location = 'https://www.powershellgallery.com/api/v2/'; IsTrusted = 'False'; IsRegistered = 'True'.
VERBOSE: Performing the operation "Register Package Source." on target "Package Source 'NuGet' () in provider 'PowerShellGet'.".
我的答案建立在@Negorath的基础上。我相信他们遗漏了一些细节:
> Get-PackageProvider -ListAvailable
Name Version DynamicOptions
---- ------- --------------
msi 3.0.0.0 AdditionalArguments
msu 3.0.0.0
NuGet 2.8.5.208 Destination, ExcludeVersion, Scope, SkipDependencies, Headers, FilterOnTag, Contains, AllowPrereleaseVersions, ConfigFile, SkipValidate
PowerShellGet 1.0.0.1 PackageManagementProvider, Type, Scope, AllowClobber, SkipPublisherCheck, InstallUpdate, NoPathUpdate, Filter, Tag, Includes, DscResource, RoleCapability, Command, PublishLocation, ScriptSourceL... Programs 3.0.0.0 IncludeWindowsInstaller, IncludeSystemComponent
正如你所看到的,我有裸体。但是,如果您没有安装,您可以使用:
> Register-PackageSource -Name NuGet -ProviderName PowerShellGet -Verbose
VERBOSE: Repository details, Name = 'PSGallery', Location = 'https://www.powershellgallery.com/api/v2/'; IsTrusted = 'False'; IsRegistered = 'True'.
VERBOSE: Performing the operation "Register Package Source." on target "Package Source 'NuGet' () in provider 'PowerShellGet'.".
我尝试了很多方法,但这一个帮助我解决了这个问题:
>Open Powershell (as Admin)
>[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
>Install-PackageProvider -Name NuGet
然后您可以在以下位置看到“nuget”文件夹:C:\Program Files\PackageManagement\ProviderAssembly我尝试了很多方法,但这一方法帮助我解决了这个问题:
>Open Powershell (as Admin)
>[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
>Install-PackageProvider -Name NuGet
然后您可以在以下位置看到“nuget”文件夹:C:\Program Files\PackageManagement\ProviderAssembly