2017-03-16 64 views
5

沒錯也有類似的問題在那裏,但他們都沒有涉及到2017年VS:的MSBuild工具2017 Azure的SDK 2.9.6

我最近從VS 2015升級到VS 2017.在我的本地開發計算機上,一切正常,並且Azure應用程序(使用Azure SDK 2.9.6)將生成並啓動。

但TeamCity的服務器上(MS生成工具2017年 - 工具版本15.0),我收到以下錯誤:

MSB4019: The imported project "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\Microsoft\VisualStudio\v15.0\Windows Azure Tools\2.9\Microsoft.WindowsAzure.targets" was not found. Confirm that the path in the declaration is correct, and that the file exists on disk.

構建服務器/的MSBuild試圖找到在目錄中Microsoft.WindowsAzure.targets

"C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\Microsoft\VisualStudio\v15.0\Windows Azure Tools\2.9\

但它實際上是在目錄:

"C:\Program Files (x86)\Microsoft Visual Studio\2017\[VisualStudioVersion]\MSBuild\Microsoft\VisualStudio\v15.0\Windows Azure Tools\2.9\

[VisualStudioVersion]可以有以下值 「社區」, 「專業」, 「企業」

是的,我已經(https://www.visualstudio.com/thank-you-downloading-visual-studio/?sku=BuildTools&rel=15)安裝了構建工具。

是的,我已經複製了整個Windows Azure Tools文件夾BuildTools\MSBuild\Microsoft\VisualStudio\v15.0,但後來我得到另一個錯誤在我的F#項目:

MSB4057: The target "GetTargetFrameworkProperties" does not exist in the project.

這似乎是新的MS生成工具2017年不能與Windows正常工作Azure上。有沒有解決方法?或者是切換回舊的MSBuild的唯一選擇?

回答

4

新的獨立0123'目前不支持Windows Azure目標。 因此,如果您想要將新的MSBuild 2017與Azure SDK一起使用,則必須在構建服務器上安裝完整的VS 2017安裝。

注意:您可能必須重新啓動TeamCity(代理)才能識別MSBuild路徑。運行構建後,你可以看到在該選項卡「參數」所使用的MSBuild的路徑:

MSBuildTools15.0_x64_Path: C:\Program Files (x86)\Microsoft Visual Studio\2017\[VS_VERSION]\MSBuild\15.0\bin\amd64 MSBuildTools15.0_x86_Path: C:\Program Files (x86)\Microsoft Visual Studio\2017\[VS_VERSION]\MSBuild\15.0\bin [VS_VERSION]可以CommunityProfessionalEnterprise

我還是得到了來自F#項目GetTargetFrameworkProperties錯誤,這通過添加標誌解決:

/p:VisualStudioVersion=15.0

到MSBuild任務。

欲瞭解更多信息,請參閱https://github.com/Microsoft/msbuild/issues/1888