Jea*_*nez 66 tfs tfs-2015 azure-pipelines
我正在使用TFS 2015设置新的构建服务器,在配置代理之后,当我尝试对构建进行排队时,我收到了以下错误:
找不到具有以下功能的代理:msbuild,visualstudio,vstest
怎么解决这个问题?
Dan*_*ann 51
在构建代理上安装Visual Studio,然后重新启动构建代理.重新启动构建代理将捕获添加的功能.
Sim*_*ver 26
注意:首先,您可以在自己的服务器上使用社区版和TFS Express 2015完成所有这些操作(最多可以免费使用五个用户) - 所以不必担心需要使用Visual Studio在线版本或支付Visual Studio Professional.
很容易误解所提供的错误消息,并试图通过疯狂追逐试图调试它.
以下是该错误消息的真正含义:
"没有找到具有以下功能的代理:msbuild,visualstudio,vstest.实际上我并没有找到为所选构建队列配置的任何构建代理."
所以你认为这不适用于你,因为你刚刚创建了一个构建代理?
好吧,也许你做了,但这可能发生了:
啊哈!所以这就是你构建时会发生什么:
当我终于意识到发生了什么时,我刚刚删除了我可爱命名的池+队列,并恢复使用默认池.
下次我将尝试在PowerShell配置期间更多关注此消息:
针对哪个代理池配置此代理?(默认池名称为'default')
您必须在池下创建一个队列,然后您的代理才能开始工作.
如果您的座席中缺少具有某种功能的正版,您可以通过此处显示的"功能"选项卡查看您的座席支持的内容.当然msbuild, visualstudio and vstest都在这里:-)
默认情况下,在VSO上使用新的构建系统时,它不会选择托管构建选项,这就是我在Stack Overflow中发表这篇文章的方式.如果您习惯使用VSO构建服务器,那么您需要执行以下操作:
通过转到"常规"选项卡并将"默认队列"更改为托管来创建托管构建.更多关于它的限制及其工作原理:https://www.visualstudio.com/get-started/build/hosted-agent-pool
就我而言,安装MSBuild(https://www.visualstudio.com/downloads/,搜索“ Visual Studio 2017的生成工具”)之后,我只需要将MSBuild的路径添加到PATH环境变量中即可。直到我这样做,代理才检测到MSBuild。
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin
Run Code Online (Sandbox Code Playgroud)
我不必安装完整的Visual Studio IDE。为这个问题选择的答案是完全错误的...