簡體   English   中英

Chocolatey 無法使用 PowerShell cmdlet

[英]Chocolatey not Working with PowerShell cmdlets

所以,我開始吃巧克力了。 但是,我注意到 cmdlet 不起作用。 就像,如果嘗試使用 choco 命令做任何事情; 例如: choco install vlc ,它工作得很好。 但是,如果我嘗試使用舊的 cmdlet; 例如: Install-Package -Name vlc -Source chocolatey ,它不斷給我發出關於找不到 Chocolatey-core.extension 的憤怒警告。

信件信息是:-

WARNING: NuGet: System.InvalidOperationException: Unable to find version '1.3.5.1' of package
'chocolatey-core.extension'.
WARNING: NuGet:    at NuGet.PackageRepositoryHelper.ResolvePackage(IPackageRepository sourceRepository,
IPackageRepository localRepository, IPackageConstraintProvider constraintProvider, String packageId,
SemanticVersion version, Boolean allowPrereleaseVersions)
WARNING: NuGet:    at NuGet.PackageManager.InstallPackage(String packageId, SemanticVersion version,
Boolean ignoreDependencies, Boolean allowPrereleaseVersions)
WARNING: NuGet:    at NuGet.Commands.InstallCommand.InstallPackage(IFileSystem fileSystem, String
packageId, SemanticVersion version)
WARNING: NuGet:    at NuGet.Program.Main(String[] args)
WARNING: NuGet: System.InvalidOperationException: Unable to find version '3.0.11' of package 'vlc'.

如果這是一個微不足道的問題,我很抱歉,但我已經嘗試讓它正常工作一段時間了,這真的讓我煩惱。 我已經按照 Chocolatey 網站上的安裝程序進行了操作,我已經取消注冊,然后將 Chocolatey 注冊為包源。 另外,如果我嘗試更新它,它會說我已經在運行最新版本(對於 power shell 和 choco)。 這是正常的嗎? 我應該忘記它嗎?... 說真的,我做錯了什么?

我也遇到過這個問題。 NuGet 和 TLS 1.3 似乎有問題。 雖然我不確定是否需要第一組命令,但運行它們確實克服了這個問題。

禁用 TLS 1.3

New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Server' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Server' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Server' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null

New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Client' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Client' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Client' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null

更改 .Net Framework 默認 TLS 版本

reg add HKLM\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 /v SystemDefaultTlsVersions /t REG_DWORD /d 1 /f /reg:64
reg add HKLM\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 /v SystemDefaultTlsVersions /t REG_DWORD /d 1 /f /reg:32

您可能想先嘗試第二組命令,如果單獨嘗試,我將更新此答案。

來源

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM