共用方式為


Web 組件 Team Foundation Build 疑難排解

更新:2007 年 11 月

下列章節說明當您使用 Team Foundation Build 建置 Web 專案時可能遇到之常見情況的疑難排解。

未建置 Web 專案

只有建置 Web 專案時,組建組態才必須設定為 ".NET";如果要建置 Web 專案和 Visual Studio 中其他 Managed 專案的混合,則必須設定為 "Mixed Platforms"。

如果您指定了不正確的組建組態,這項警告會記錄在建置記錄檔中:

Warning MSB4126: The specified solution configuration "Release|Any CPU" is invalid. Specify a valid solution configuration using the Configuration and Platform properties (e.g, MSBuild.exe Solution.sln /p:Configuration=Debug /p:Platform="Any CPU") or leave those properties blank to use the default solution configuration.

方案

根據您的組建定義將組態變更為「混合平台」或 ".NET"。或者,當您在建立新的 TFSBuld.proj 檔時,請在 [MSBuild 專案檔建立精靈] 的 [選取要建置的組態] 頁面上選取 [.NET] 或 [混合平台] 當做組態。如需詳細資訊,請參閱 HOW TO:建立組建定義

目錄結構發生衝突

根據預設,當您在 Visual Studio 中建立 Web 專案時,方案檔案和網站檔案會儲存在兩個不同的位置。Web 專案 "SampleWS" 的方案檔案會儲存在:

  • <root>:\Documents and Settings\user\My Documents\Visual Studio 2008\Projects\SampleWS

網站的檔案會儲存在:

  • <root>:\Documents and Settings\user\My Documents\Visual Studio 2008\Websites\SampleWS

Web 專案的方案檔包含了指向網站資料夾的 PhysicalPath 屬性,以便尋找它進行編譯 (Compilation)。但是,當 Web 專案的方案簽入原始檔控制時,此方案檔會儲存在根資料夾中,而網站會儲存在緊接其下的子資料夾中。這項處理的結果會在原始檔控制的方案檔中產生毀損的 PhysicalPath 屬性。在建置期間,Team Foundation Build 會使用版本控制資料夾結構來同步處理 Web 專案檔。由於版本控制的目錄結構與方案的資料夾結構不同,所以會產生編譯錯誤。

如果方案檔和原始檔控制內的目錄結構發生衝突,這個錯誤會記錄在建置記錄檔中:

ASPNETCOMPILER(0,0): 錯誤 1003: d:\<builddirectory>\MyTeamProject\SampleWS\WebSites\SampleWS\' 目錄不存在。

解決方案

  • 在 Visual Studio 中建立空的方案,然後在與此方案相同的位置中建立網站。

  • 修改方案檔內的 Debug.AspNetCompiler.PhysicalPath 和 Release.AspNetCompiler.PhysicalPath 屬性,使其指向原始檔控制的網站資料夾。

請參閱

其他資源

管理 Team Foundation Build

Team Foundation Build 疑難排解

使用 Team Foundation Build 管理組建