2013-08-01 64 views
7

我最近將Azure項目從Azure SDK 1.6(Visual Studio 2010)升級到Azure SDK 2.0(Visual Studio 2012)。該項目將在本地機器上建立,沒有錯誤或警告。我可以在本地機器上調試,但是我無法打包或在構建服務器上獲得構建。我得到的錯誤是:Azure上的打包/發佈錯誤

錯誤MSB4057:目標「PipelineTransformPhase」在項目中不存在。

我已經確認C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v11.0 \ WebApplications \ Microsoft.WebApplications.targets文件存在於本地和構建服務器上。

原始項目指向\ v10.0 \路徑,我手動將其更改爲\ v11.0 \路徑,嘗試解決錯誤,但沒有運氣。

回答

11

我注意到,當項目無法訪問Microsoft.WebApplications.targets文件時,它通常會說「目標」PipelineTransformPhase「在項目中不存在。」

您需要將Microsoft.WebApplications.targets文件導入到項目中。您可以通過在項目中添加以下行來完成。

<Import Project="C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" /> 

將Microsoft.WebApplication.targets導入項目文件時,請確保沒有設置顯式條件=「false」。當Microsoft.WebApplication.targets與Condition =「false」一起導入到項目時,我看到類似的錯誤。

將Microsoft.WebApplication.targets導入到項目文件時,需要考慮的另一件事是始終確保將默認變量$(MSBuildExtensionsPath32)設置爲「C:\ Program Files(x86)\ MSBuild \」。

+0

這也適用於升級到Azure SDK 2.2/VS 2013的項目。具體而言,請刪除Condition =「false」屬性。 – RyanCEI

相關問題