gpt4 book ai didi

PowerShell 7 使用 Chocolatey 作为 PackageManager

转载 作者:行者123 更新时间:2023-12-05 00:57:08 25 4
gpt4 key购买 nike

PowerShell 5 和 7 在 PackageManagers 方面仍然不同。
Chocolatey 似乎还没有“集成”,我不能像在 PowerShell 5 中那样在 PowerShell 7 中使用 Chocolatey。

我已经按照他们网站上说的方式安装了 Chocolatey,但这让我可以使用 Chocolatey 来使用 choco 启动我的命令。

如何在 PowerShell 7 中配置 Chocolatey,以便可以像在 PowerShell 5 中一样使用它。
Find-Package -ProviderName Chocolatey -Name <packagename>

最佳答案

  • 从 PowerShell [Core] 7 开始,您似乎不能使用 Chocolatey作为 PowerShell 的 PackageManagement 的提供者模块,这意味着您无法使用 Find-Package 发现或安装 Chocolatey 软件包和 Install-Package .

  • 但是,直接通过其 CLI 使用 Chocolatey ,choco.exe,在 PowerShell [Core] 中运行良好(*.exe 文件只要其运行时存在于系统上就可以运行,这不必与 PowerShell 的运行时相同)。

继续阅读背景信息:


看起来实现 PackageManagement 提供程序需要以仅支持 .NET Framework (FullCLR) 的方式访问 Chocolatey API,而不支持 .NET Core(在其上构建 PowerShell [Core])[1] ;引自 Chocolatier 的自述文件,社区提供的替代官方提供者的从未发布的原型(prototype):

Currently, Chocolatier works on Full CLR. It is not supported on CoreClr (...). The primary reason is that the current version of choco.exe does not seem to support CoreClr yet.

至于在Windows PowerShell上使用:

Chocolatey PackageManagement 提供程序的官方原型(prototype) - 仅限 Windows PowerShell - 迄今为止,多年后仍未实现;这是the docs比如说,检索于 2020 年 4 月 13 日(已添加重点):

Chocolatey has a prototype provider for the built-in package manager on Windows 10/Windows Server 2016 that was created by Microsoft awhile back. It is not fully functional and it may have security issues. If you want to use Chocolatey with PackageManagement, we recommend using ChocolateyGet, which is a nice bridge until an official one is implemented. No ETA has been defined.

注意:

  • 前面提到的Chocolatier , 它建立在 ChocolateyGet ,似乎是撰写本文时维护得更积极的项目。

  • 有一个相当近期的待处理 PR由社区成员为官方原型(prototype)制作,但尚未受到任何关注;而且,它也不完整;有关完整的背景故事,请参阅 this GitHub issue .


[1] 如果您知道详细信息,请告诉我们。

关于PowerShell 7 使用 Chocolatey 作为 PackageManager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61176062/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com