如何为Visual Studio的Chocolatey包配置生效的工作负载安装参数
解决方案
问题核心是参数传递属性不符合Visual Studio Chocolatey包的约定,同时存在转义规则误用,按以下要求修改即可生效:
- 替换属性名:将
installArguments改为packageParameters。官方维护的Visual Studio Chocolatey包仅会读取packageParameters属性中的配置,拼接为最终的VS安装命令,installArguments的内容不会被包的安装脚本识别为工作负载配置。 - 修正转义规则:移除所有分号前的PowerShell转义符
`,XML属性中不需要PowerShell转义规则,分号直接编写即可,若担心XML解析冲突可使用实体编码;代替分号。 - 执行注意事项:如果设备上已经安装过对应版本的Visual Studio,执行安装命令时需添加
--force参数强制重新触发安装流程,否则VS安装程序会检测到已存在的实例,直接跳过工作负载修改步骤。
修正后的packages.config示例:
<?xml version="1.0" encoding="utf-8"?> <packages> <package id="visualstudio2019pro.16.9.31205.134.nupkg" packageParameters="--add Microsoft.VisualStudio.Workload.ManagedDesktop;includeRecommended --add Microsoft.VisualStudio.Workload.NetWeb;includeRecommended;includeOptional --add Microsoft.VisualStudio.Workload.Data;includeRecommended --add Microsoft.VisualStudio.Workload.Azure --add Microsoft.Net.Component.4.8.TargetingPack" /> <package id="docker-desktop.3.2.2.61853.nupkg" /> </packages>
修改完成后执行命令:
choco install packages.config --force
内容的提问来源于stack exchange,提问作者NullPointer
相关产品推荐
相关产品推荐

