將我們的解決方案升級到Visual Studio 2012後,我們希望利用新的Code Analysis功能。但是,運行時間太長,因爲它在運行之前正在重建項目和相關項目,即使代碼沒有更改也不需要重建。阻止代碼分析重建Visual Studio 2012中的項目和依賴關係
如果不需要重建,有沒有辦法阻止重建代碼?
將我們的解決方案升級到Visual Studio 2012後,我們希望利用新的Code Analysis功能。但是,運行時間太長,因爲它在運行之前正在重建項目和相關項目,即使代碼沒有更改也不需要重建。阻止代碼分析重建Visual Studio 2012中的項目和依賴關係
如果不需要重建,有沒有辦法阻止重建代碼?
如果您剛開始使用代碼分析,那麼您可能會誤認爲症狀。您看到: ê 1.代碼分析需要相當長的時間量, 2.在代碼分析,該項目建立
你可能會結合這兩種症狀和深遠的結論是代碼分析強迫重建你的項目。這將是一個錯誤的假設。試試這個:
你會發現,你的解決方案實際上是「建立」,但由於項目是最新的,編譯器和其他工具不運行。因此,代碼分析確實首先運行你的解決方案的構建,但是它將會像上面的#3一樣構建 - 沒有任何變化,所以這些工具不會運行。只有代碼分析工具(FxCop)會運行。這需要比您預期的更長的時間,但它是值得的。
在我們的環境中,我創建了一個「本地」解決方案和項目配置,從「調試」複製而來。該配置與「調試」大致相同,但不運行代碼分析。這是我們的開發人員每天使用的基礎。將代碼簽入TFS時,它會再次在「本地」配置中啓動持續集成(CI)構建,而無需進行代碼分析。
另一方面,夜間構建運行「調試」配置,因此它運行代碼分析。我發現我們不需要每個版本的代碼分析結果,但是它每天都需要一次。
OBTW,代碼分析並不新鮮。如果你看看你鏈接到的MSDN頁面,你會在「其他版本」下拉菜單中找到2010版本的頁面。事實上,在它成爲產品的一部分之前,代碼分析功能可以作爲名爲「FxCop」的Visual Studio插件提供。
嗨感謝您的回覆。在代碼分析中,靈魂決心再次重建。輸出窗口顯示了這一點。自行重建並運行代碼分析的時間幾乎相同。代碼分析在重建時不運行。構建時間要快得多。 – user2732185
我相信上面的Johns聲明是錯誤的。
根據我的經驗,無論是否配置了代碼分析,項目都會被重建。
我有超過100個項目的解決方案。如果我選擇1個項目並僅對該項目運行代碼分析,則會重建該項目及其所依賴的所有項目。它不會在其他項目上運行代碼分析,但它仍然會重建它們。
那麼爲什麼它必須重建所有的子項目來運行代碼分析?
很確定重建是靜態代碼分析運行。 –