2011-01-05 52 views
2

考慮包含以下指令一.csproj的:TFS生成代理丟失web應用目標

< Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />

有一個獨立的TFS構建機器上安裝的服務,使用默認的控制器和一個代理。 TFS組件已安裝;未安裝Visual Studio。

當編譯(針對.NET 4),TFS的建設服務的ASP.NET MVC 2 Web應用程序遇到錯誤:

C:\somepath\foo.csproj (219): The imported project "C:\Program Files\MSBuild\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the declaration is correct, and that the file exists on disk.

TF270015: 'MSBuild.exe' returned an unexpected exit code. Expected '0'; actual '1'.

這是真的:有沒有子目錄「web應用」中的「 C:\ Program Files \ MSBuild \ Microsoft \ VisualStudio \ v10.0「目錄。

看來這個子集沒有包含在TFS Build服務的安裝中。 TFS不會提供有關爲Bu​​ild服務安裝的部件的任何選項。

在這個TFS Build機器上安裝這些工件和任何依賴關係的最合適的方式是什麼?這可以避免嗎?

回答

2

您是否嘗試過手動創建路徑C:\Program Files\MSBuild\Microsoft\VisualStudio\v10.0\WebApplications\並將文件Microsoft.WebApplication.targets複製到那裏?如果Microsoft.WebApplication.targets不包含對應該執行該操作的某些特定構建任務的引用。
至少爲that worked Visual Studio 2005.

+0

體面的建議。我不確定其他文件應該放到哪裏,或者哪些依賴項需要部署。 (註冊表項等)它不可能像單文件丟失一樣簡單嗎? :) – 2011-01-05 21:48:47

+0

@ p.campbell:我瀏覽了'Microsoft.WebApplication.targets'文件。看起來你也需要'Microsoft.WebApplication.Build.Tasks.Dll'文件。並且可能會安裝Silverlight SDK。 – 2011-01-06 11:02:38

-1

最好的解決方案是始終在您的生成機器上安裝VS2010。

+3

而這種許可的含義是什麼? – Craig 2012-10-02 10:40:41

0

檢查引用中的不需要的引用,如'stdole.dll'並將其刪除。再次連接到tfs(刷新) 嘗試再次構建。