我正在嘗試爲使用Fakes庫進行單元測試的項目設置自動構建和單元測試。該項目在我的Windows 10 PC(VS 2017企業版已安裝)上編譯和測試,但使用相同的命令編譯構建服務器上的項目(也包括VS 2017 Enterprise的Windows 10)會給出不存在的錯誤。確切的錯誤是這樣的:MSBuild 15 - 命名空間中不存在類型或命名空間'Fakes'
XControllerTests.cs(10,20): error CS0234: The type or namespace 'Fakes' does not exist in the namespace 'System.Data.Common' (are you missing an assembly reference?) [C:\Runner\builds\xxx\XTests.csproj]
從我的研究,這是通過使用舊版本的MSBuild造成的,但是,我已經檢查了服務器,並確認它有最新版本的Visual Studio &更新安裝。我還確認了構建腳本使用的是正確版本的MSBuild.exe,它的編號爲c:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\MSBuild.exe
。在我的桌面上使用此版本可以正確編譯項目。
爲什麼構建不能在(相同設置)構建服務器上工作?
我有同樣的問題,但我在構建服務器上使用MS Build Tools 2017。比msbuild的路徑是c:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ BuildTools \ MSBuild \ 15.0 \ Bin – McMlok