没有代理可以find以下function:msbuild,visualstudio,vstest?

我正在使用TFS 2015设置一个新的生成服务器,并且在configuration代理之后,当我尝试对生成进行排队时,出现此错误:

没有代理可以find以下function:msbuild,visualstudio,vstest

这怎么解决?

在构build代理上安装Visual Studio,然后重新启动构build代理。 重新启动构build代理将捕获添加的function。

注意:首先,您可以在自己的服务器上免费使用社区版和TFS Express 2015(免费最多5个用户),因此不必担心需要使用VS在线版本还是为VS Professional付费。


曲解所提供的错误信息非常容易,并试图对其进行debugging。

不幸的是,这个信息本身就是一个错误的措辞,这是真正的问题。

这是错误信息的真正含义:

“没有代理可以find以下function:msbuild,visualstudio,vstest。实际上,我没有find任何构build代理configuration为选定的生成队列。

所以你认为这不适用于你,因为你刚刚创build了一个构build代理?

那么也许你做了,但这里可能发生了什么:

  • 你创造了一个新的游泳池(没有任何理由,除了你以为你应该)
  • 然后您在该池下创build了一个队列
  • 你运行的PowerShell脚本创build和代理,你以为它把它放在你刚才创build的池
  • 但它没有 – 它把它放在你甚至没有使用的“默认”池中。

啊哈! 所以这里是你build立时会发生什么:

  • 您从下拉列表中select一个队列
  • TFS尝试通过查找对应于该队列的池来构build,并且在那里找不到任何代理,因此您将得到一个愚蠢的无用的红鲱鱼错误消息。

当我终于意识到发生了什么事情时,我刚刚删除了我可爱的命名池+队列,并刚刚恢复为使用默认池。

下次我将尝试在PowerShellconfiguration期间更多关注此消息:

针对哪个代理池configuration此代理? (默认池名称是“默认”)

你将不得不在池下创build一个队列,但是你的代理应该开始工作。

如果您的代理商缺less某项function,您可以通过此处显示的“function”选项卡查看代理商支持的function。 当然msbuild, visualstudio and vstest都在这里:-)

在这里输入图像说明

默认情况下,当在VSO上使用新的构build系统时,它不会select托pipe构build选项,这是我在堆栈溢出结束后的结果。 如果您习惯使用VSO构build服务器,那么您需要执行以下操作:

转到“常规”选项卡并将“默认队列”更改为托pipe,以创build托pipe版本。 更多的限制,以及它如何在这里工作: https : //www.visualstudio.com/get-started/build/hosted-agent-pool

我正在使用Xcode构build奴隶来build立一个Xcode项目。 而我在TFS 2015结束的错误消息是“没有代理可以被发现具有以下function:xcode”

我注册了一个OSX的前提下build立奴隶 。

在“注册代理”步骤中,我通过构build代理命名:

 >> Register Agent: Enter agent pool (press enter for default) > My-Xcode-Agent-Pool 

所以,我必须在构build设置中select“My-Xcode-Agent-Pool”作为默认队列。 资料来源: https : //www.visualstudio.com/docs/build/agents/hosted-pool

TFS的一般解决scheme:

解决构build服务器上大多数问题的常见方法是在构build服务器上安装Visual Studio和所有相关的包。

使用VSTS的替代解决scheme

当你select在哪里build立,使用“托pipe”,然后构build将工作。

该指南如何使其工作可以在这里find: https : //www.visualstudio.com/en-us/docs/build/actions/agents/v1-windows

检查将包含有关function的信息的代理部分。