如何使用舊版TFS 2015/2013 Xmal Build 自動化編譯VS 2017 專案?

  • 659
  • 0
  • 2017-10-25

說明如何使用舊版TFS 2015/2013 Xmal Build 編譯VS 2017 專案?

預設舊版的TFS 舊版TFS 2015/2013 Xmal Build 無法自動化編譯 VS 2017開發專案

微軟官方的說法是建議使用者轉往新的網頁版自動化編譯系統

如果還是要使用舊版TFS 2015/2013 Xmal Build 自動化編譯 VS 2017開發專案

則Build Controller上必須要先安裝VS 2013或者VS 2015

且必須安裝VS 2017 或者 Build Tools for Visual Studio 2017

然後修改TFSBuildServiceHost.exe.config (TFS 2015的路徑為C:\Program Files\Microsoft Team Foundation Server 14.0\Tools)

加上以下內容:

<configuration>
   <configSections>
    <!-- VS2013 -->
     <!-- <section name="msbuildToolsets" type="Microsoft.Build.Evaluation.ToolsetConfigurationSection, Microsoft.Build.Utilities.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" requirePermission="false" /> -->
    <!-- VS2015 -->
    <section name="msbuildToolsets" type="Microsoft.Build.Evaluation.ToolsetConfigurationSection, Microsoft.Build.Utilities.Core, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" requirePermission="false" />
  </configSections>
... snip ...
  <msbuildToolsets>
      <toolset toolsVersion="15.0">
         <property name="MSBuildToolsPath" value="C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin" />
      </toolset>
      <toolset toolsVersion="latest">
         <property name="MSBuildToolsPath" value="C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin" />
      </toolset>      
   </msbuildToolsets>
</configuration>

也可以參考附件 https://1drv.ms/u/s!Aq7zAYuKnydghIEP24EaJGqeDCgw0w

重啟Build Controller以後  在組建定義中

須加上兩個MSBuild參數 如下:

/tv:15.0 /p:VisualStudioVersion=15.0

即可正確編譯VS2017專案

但此方法非官方做法 同時也無法與單元測試專案結合

參考資料網址:

https://social.msdn.microsoft.com/Forums/en-US/f3c4fc0b-d9ee-474a-9d91-9c5810b074a2/how-to-get-vs-2017-working-with-tfs-2017-xaml-builds?forum=tfsbuild

風來疏竹,風過而竹不留聲;雁度寒潭,雁去而潭不留影。故君子事來而心始現,事去而心隨空。