如何为Azure DevOps ubuntu-latest托管代理安装最新dotnet生成工具
解决方法
你遇到的问题本质是当时的ubuntu-latest托管代理未预装Microsoft.NET.Sdk.Functions 4.0.0依赖的.NET 6 RC1版本运行时/SDK,按以下步骤操作即可修复:
方案1:在管道中添加UseDotNet任务安装指定.NET版本
在你的Azure DevOps管道YAML的构建步骤最前面,添加以下任务:
- task: UseDotNet@2 inputs: packageType: 'sdk' version: '6.0.100-rc.1.21458.32' includePreviewVersions: true
- 该任务会自动在代理上下载并安装你指定的.NET SDK版本,和你本地VS2022预览版自带的SDK效果一致
includePreviewVersions参数必须开启,因为你需要的RC1属于预览版本
方案2:配合global.json固定SDK版本(可选)
如果要更稳定的管控项目SDK版本,可在你的代码仓库根目录新增global.json文件,内容如下:
{ "sdk": { "version": "6.0.100-rc.1.21458.32", "rollForward": "latestMinor" } }
再配合方案1的UseDotNet任务,即可保证本地和管道构建的SDK环境完全一致。
验证步骤
添加任务后重新运行管道,构建阶段会先执行.NET SDK安装,后续的Functions构建任务就能找到匹配的框架版本,不会再报兼容性错误。
内容的提问来源于stack exchange,提问作者Pazza22
相关产品推荐
相关产品推荐

