2017-08-17 42 views
1

我正在嘗試使用本地TFS 2017構建代理爲傳統VB.Net ASP.Net Forms應用程序設置持續集成過程。但是,MSBuild無法構建項目(它在VS中愉快地構建)。我可以修改MSBuild編譯選項以防止/忽略特定的生成錯誤嗎?

構建失敗,出現以下錯誤類型的多個警報。

錯誤BC32025:「#REGION」和「#END地區」語句的方法體/多行lambda表達式中有效 。

錯誤BC30126: '只讀' 屬性必須提供 'GET'。

我明白爲什麼這些錯誤拋出,但我寧願沒有貫穿整個項目重構這個工作代碼犁只是爲了得到它與MSBuild的編譯器,工作時它編譯和運行完全在良好視覺工作室。

是否有一個開關/設置我可以用來告訴MSBuild忽略這些/其他錯誤?我簡單地嘗試過在MSBuild Arguments字段中使用/p:nowarn標誌,但是構建似乎在未告訴我的情況下失敗了......

回答

1

我懷疑這是您在生成服務器上安裝的.NET版本。我會檢查你的本地版本,以及你在版本服務器上的版本和協調。

您可能想要爲MSBuild嘗試/toolsversion:x.x開關(簡稱爲/tv:x.x),並從2.0,3.5和4.0中選擇。

https://docs.microsoft.com/en-us/visualstudio/msbuild/msbuild-command-line-reference

+0

感謝您輸入吉姆。我的開發PC上安裝了.net 4.7,而構建服務器上只有4.6.1(因爲目前安裝Windows更新時出現問題),所以也許這是問題的根源。我嘗試過使用各種不同的工具版本'/tv:14.0,/tv:4.0,/tv:3.5',但沒有任何成功。 – Ted

+0

讓我知道它是怎麼回事。我敢打賭,4.7會解決你的問題。 –

+0

爲了讓事情順利進行,我在代碼中加入了MSBuild想要的所有更改,結果證明,並沒有那麼多(我擔心隨着我修復每一個錯誤都會發出一波又一波的錯誤),但我希望深入到底,以供將來參考(並允許我們再次在方法內使用#region標籤!),所以我絕對會讓你知道它是怎麼回事...... – Ted

相關問題