是的,那里有类似的问题,但它们与VS 2017无关:
我最近从VS 2015升级到VS 2017.在我的本地开发计算机上一切正常,Azure应用程序(使用Azure SDK 2.9.6)构建并启动。
但是在TeamCity服务器上(MS Build Tools 2017 - 工具版本15.0)我收到以下错误:
MSB4019:导入的项目“C:\ Program Files(x86)\ Microsoft 视觉 工作室\ 2017年\编译工具\的MSBuild \微软\ VisualStudio的\ V15.0 \ Windows下 找不到Azure Tools \ 2.9 \ Microsoft.WindowsAzure.targets。确认 声明中的路径是正确的,而那个 文件存在于磁盘上。
构建服务器/ 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:目标“GetTargetFrameworkProperties”中不存在 该项目。
似乎新的MS Build Tools 2017无法与Windows Azure一起正常运行。还有解决方法吗?或者是切换回旧版MSBuild的唯一选择吗?
答案 0 :(得分:5)
新的独立BuildTools
目前不支持Windows Azure目标。
因此,如果要在Azure SDK上使用新的MSBuild 2017,则必须在构建服务器上安装完整的VS 2017安装。
注意:您可能必须重新启动TeamCity(代理)才能识别MSBuild路径。运行构建后,您可以在选项卡'parameters'中看到使用过的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]可以是Community
,Professional
或Enterprise
我仍然从F#项目中得到GetTargetFrameworkProperties
错误,这是通过添加标志来解决的:
/p:VisualStudioVersion=15.0
到MSBuild任务。