如何在 Azure DevOps Server 2020 中为 C#10 / .NET 6.0 项目创建构建任务

Posted

技术标签:

【中文标题】如何在 Azure DevOps Server 2020 中为 C#10 / .NET 6.0 项目创建构建任务【英文标题】:How to create Build Task for C#10 / .NET 6.0 project in Azure DevOps Server 2020 【发布时间】:2022-01-06 05:17:38 【问题描述】:

我已经有一个现有项目的构建管道。我试图将项目更改为<LangVersion>10</LangVersion>。现在构建管道失败了,因为它说 10 是不允许的。

我已经安装了 Build Tools 2022,但仍然无法使用。当我打开管道以更改要在构建任务中使用的 MSBuildVisual Studio 版本时,我只能选择 2019 之前的版本或 latest(我在这里选择了 latest)。

Build Tools 2019 仍然安装(我不想冒险,其他管道会因为更新而失败)。那么也许构建代理只是使用了错误的 MSBuild 版本?也许我必须更新构建代理本身? (它不会自动工作,因为我们公司的防火墙,我必须将较新的版本复制到服务器进行部署。)

谁能告诉我,官方的方法是什么,才能让它工作。我的谷歌搜索没有给我可用的结果。

【问题讨论】:

见:***.com/questions/69980204/… 我无法构建任务(可能是我公司的防火墙)。有没有机会在没有访问云托管 Azure-Devops 的情况下下载任务? 最安全的选择是直接从任何 azure DevOps 组织下载它们,甚至可以是在个人帐户下创建的临时组织)。我可以提供 zip 文件,但 nut 不能保证这些 zip 的内容。我个人不会相信这一点。您要么需要构建任务(可能在您自己的构建服务器之一上?),要么下载它们。 如果您确实信任我的脚本功能,这里有一个自动下载所有任务的最新快照的存储库。有一个逐字版本以及一个修补每个任务的版本,以便它可以与原始任务并排安装(sxs)。 github.com/jessehouwing/azure-pipelines-tasks-zips/releases 非常感谢,我会试试的。 【参考方案1】:

您应该阅读 Mircosoft 的开发博客文章 MSBuild and 64-bit Visual Studio 2022

并检查github example

【讨论】:

如果我理解正确,我必须更改所有 yaml 文件才能使其正常工作?这听起来不对!你确定,没有干净的方法可以做到这一点? 另外,没用。 - 为了完整起见:我将版本更改为 17,将 msbuildArchitecture 更改为 x64。但是代理仍然没有找到 msbuild 版本。

以上是关于如何在 Azure DevOps Server 2020 中为 C#10 / .NET 6.0 项目创建构建任务的主要内容,如果未能解决你的问题,请参考以下文章

azure devops cloud 和 azure devops server 2019 之间的区别

Azure DevOps Server 2022.0.1升级手册

如何在 Azure DevOps Server 2020 中为 C#10 / .NET 6.0 项目创建构建任务

如何在 azure devops server 2019 的新工作项 Web 布局中编程工作项水平选项卡?

Azure DevOps Server:还原被删除的分支

Azure DevOps Server:还原被删除的分支