自2009年微軟發佈Windows 7以來,通過8年的市場驗證,Windows 7已經成爲史上應用最爲普遍的操做系統。可是面對技術變化的突飛猛進,2015年微軟正式中止了對Windows 7的主流支持,並將於2020年正式結束對Windows 7的全部技術支持。這一運行了8年之久的操做系統,在微軟發佈Windows 八、Windows 10之後多年,仍然保留着強大的生命力,至今仍是許多企業和政府部門內部計算機的主流操做系統。shell
基於這種情況,許多應用程序的開發環境目前只支持Windows 7操做系統。做爲目前普遍使用的ALM產品,TFS一樣支持基於Windows 7的編譯和發佈技術。下面我來介紹如何在Windows 7計算機上安裝和配置TFS的代理服務器,爲研發團隊完成持續集成提供必要的服務器環境。服務器
在今天的實驗環境中,我使用了下面列表中必須的軟件:操作系統
- Windows 7 with Service Pack 1.net
- Microsoft .Net Framework 4.0 (dotNetFx40_Full_x86_x64.exe)命令行
- Microsoft .Net Framework 4.5 (mu_.net_framework_4.5_r2_x86_x64_1076098.exe)3d
- Microsoft .Net Framework 4.6.1 (NDP461-KB3102436-x86-x64-AllOS-ENU.exe)。在實際應用中,可能只須要安裝Framework 4.6.1就能夠,你們能夠本身驗證。代理
- Windows Management Framework 3.0 (Microsoft Powershell 3 - Windows6.1-KB2506143-x64.exe),注意選擇Windows6.1blog
- Windows6.1-KB2533623-x64.msuip
- VSTS (TFS) Agent for Windows (vsts-agent-win7-x64-2.112.0.zip)開發
PowerShell 3是VSTS/TFS代理服務的必要條件。
可是,原生的Windows 7自帶PowerShell的版本是2009,也就是PowerShell 2.0,你可使用$PSVersionTable查看Powershell的版本。
在Powershell 2.0的環境中配置TFS代理,你會碰到一堆的錯誤,最後提示須要Powershell 3.0以上版本,以下圖:
安裝Powershell 3.0,實際上也是安裝補丁KB2506146。注意須要下載對應的安裝包程序,例如64位系統不要下載32位的安裝程序。
若是系統提示」此更新不適用於你的計算機「,緣由多是你的計算機上沒有安裝.NET Framework 4,這是PS 3的必要條件。
安裝.NET Framework 4.0,以下圖:
.NET Framework 4.0安裝成功,不須要從新啓動操做系統
再次運行Powershell 3的安裝包,系統提示正常,以下圖:
安裝成功後,安裝系統提示從新啓動計算機,以下圖:
從新啓動計算機後,再次運行$PSVersionTable,你會看到PSVersion的值爲3.0,以下圖:
Failed to load hostfxr.dll,谷歌了一下,發現須要安裝補丁KB2533623, https://www.microsoft.com/en-us/download/confirmation.aspx?id=26764
系統提示須要.Net Framework 4.5或者更高版本。實際上,若是你在Windows 7上安裝Framework 4.6,會碰到其餘錯誤,這裏不在贅述。咱們老老實實的安裝.Net Framework 4.5吧。
.NET Framework安裝完畢,再次執行配置程序,系統提示須要安裝.NET Framwork 4.6,才能夠同步TFVC代碼庫
原本打算配置好代理之後,再安裝Framework 4.6,結果在配置過程當中,輸入服務帳戶的密碼之後,系統提示應用程序沒法啓動,須要Framework 4.5.2。
手頭沒有.NET Framework 4.5.2。好吧,那我安裝.NET Framework 4.6.1
安裝完成Framework 4.6.1之後,從新來配置TFS代理。因爲以前已經配置了TFS的服務程序,須要使用config.exe remove命令刪除以前的配置信息,再從新啓動配置程序
從新配置之後,終於看到了代理服務程序成功啓動的提示
在TFS服務的代理池中,也能夠看到剛剛新增的代理服務器
新建一個生成定義,在流程中經過命令行顯示操做系統名字和版本,而且指定WIN7這臺代理執行編譯流程,執行結果以下圖,顯示代理服務器運行正常。
上面走了好多了彎路,後來又在一臺全新的Windows 7 with SP1上驗證了整過過程,發現能夠簡單概括爲下面的幾個步驟:
- 安裝.NET Framework 4.6.1 (NDP461-KB3102436-x86-x64-AllOS-ENU.exe)
- 安裝Powershell 3 (Windows6.1-KB2506143-x64.msu)
- 從新啓動計算機
- 安裝補丁:Windows6.1-KB2533623-x64.msu,修復問題Failed to load hostfxr.dll。
- 安裝VSTS/TFS代理程序
(微軟ALM MVP 張洪君 http://www.cnblogs.com/danzhang )