我们使用TeamCity作为CI服务器(但我想这适用于任何构建服务器)。我们没有在构建服务器上安装Azure SDK,但是能够使用此处描述的解决方法来构建使用SDK的项目。现在我希望服务器生成部署到Azure的包,但是当我运行MSBuild任务创建包(如此处所述),我会收到一个奇怪的错误: error MSB4057:项目中不存在目标"WatGetTargetFrameworkDirectories"。 这导致谷歌搜索结果很少。我需要安装SDK吗?还是这个错误与其他问题有关?
WatGetTargetFrameworkDirectories 是 AzureSDKs .targets 文件中的一个目标。看起来你的错误与 Azure SDK 相关。除此之外,可能还涉及到不太好的 msbuild Azure Targets 的细微错误。对于我们自己的 azure 打包,我们需要调用 2 个目标 "Clean;CorePublish",而不仅仅是 "Publish"。也许这也能帮助你。顺便说一下:为什么你不想在 TeamCity BuildAgent 上安装 AzureSDK?构建代理正是为此而设计 - 以拥有构建所需的框架。此外,1.6 和 1.7 AzureSDK 可以并存安装。