zoukankan      html  css  js  c++  java
  • TFS2008如何自动构建VS2010的解决方案

    公司一直用的是TFS2008做的项目管理,有项目组用VS2010的.netframeWork4做项目,测试部门在做自动构建的时候发现构建时报错,具体错误是MSB4131,在网上查了一下,在C:\Program Files\MSBuild\Microsoft\VisualStudio\TeamBuild\Microsoft.TeamFoundation.Build.targets的文件里搜索“Reason”字样,查到如下配置节

    <Output TaskParameter="Reason" PropertyName="Reason" /> ,把这行注释掉,记得改之前备份

    继续自动构建生成,错误换了一个,这次是报找不到.netFrameWork4了, 于是转到TFS服务器上,安装了VS2010,可自动构建时还是报错,于是还是网上google,发现了一个解决方案还挺好用,不得不感慨老外的思路真是很灵活,我当时是完全没思路了,也不能升级至TFS2010。

    具体步骤是

    1)在你的TFS服务器场里面找到运行“ Visual Studio Team Foundation Build"服务的那台机器,就是你的自动构建服务机器,如下图

    2)转到C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies目录下,复制tfsbuildservice.exe和tfsbuildservice.exe.config文件,命名为tfsbuildservice2.exe和tfsbuildservice2.exe.config

    3)在tfsbuildservice2.exe.config里面把port相关的节点改为9193和9194,

    然后在msbuild节点的value里面填入如下内容

    <add key="MSBuildPath" value="c:\windows\microsoft.net\Framework\v4.0.XXXX\" /> 具体版本根据你的实际安装版本号

    4)很精彩的一步,建立另一个自动构建服务在这台机器上

         1、首先保留9193端口给TFS的web服务

      命令行下运行 wcfhttpconfig.exe reserve "服务账户名称" 9193 

      服务账户名称根据你的TFS环境下配置的管理员账户即可

          2、建立一个新的自动构建服务

              命令行下运行 sc create "Visual Studio Team Foundation Build VS2010" binpath= "C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\tfsbuildservce2.exe" 

              将此服务的启动账户设为上一步的账户,并设置为自动启动

              如图

           3、还没完,看看你的防火墙上是不是开放了9193和9194

    4)重新建立你的自动构建,在新建自动构建代理时,注意不要选择9191,而要选择你的新服务端口9193

         autobuild try again, OK,大功告成。

  • 相关阅读:
    玄学最短路算法——Ex Floyd
    题解 CF785E 【Anton and Permutation】
    题解 P1825 【[USACO11OPEN]玉米田迷宫Corn Maze】
    实现非递归树链剖分
    题解 P3423 【[POI2005]BAN-Bank Notes】
    题解 P3871 【[TJOI2010]中位数】
    【带修改的主席树】理解题解 (P2617 【Dynamic Rankings】题解)
    快速计算高精乘低精---低精优化高精
    了解 yaml文件格式
    com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'test.ac_flight' doesn't exist
  • 原文地址:https://www.cnblogs.com/georgehu/p/tfs2008abvs2010.html
Copyright © 2011-2022 走看看