我目前在Visual Studio中有一个包含三个角色的Azure Cloud Service - 两个ASP.NET Web角色和一个非常简单的Node.js角色。
这在本地Visual Studio中正确构建和打包,并完美部署到Azure计算模拟器中。
尝试使用TeamCity构建解决方案时,MSBuild无法声明:
[15:22:48] C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\Windows Azure Tools\2.3\Microsoft.WindowsAzure.targets(1253,5): error : WAT070 : The referenced assembly C:\TeamCity\buildAgent\work\a1a1a1a1a1a1a1a1\NodejsApp\NodejsApp.exe was not found. Please make sure to build the role project that produces this assembly before building this Windows Azure Cloud Service Project. [C:\TeamCity\buildAgent\work\a1a1a1a1a1a1a1a1\CloudService\CloudService.ccproj]
...这似乎表明它期望Node.js项目的构建发出.exe文件。
Cloud Service项目中Node.js应用程序的项目参考如下:
<ProjectReference Include="..\NodejsApp\NodejsApp.njsproj">
<Name>NodejsApp</Name>
<Project>{5b84f347-2866-40ee-9252-a1a1a1a1a1a1}</Project>
<Private>True</Private>
<RoleType>Web</RoleType>
<RoleName>NodejsApp</RoleName>
<UpdateDiagnosticsConnectionStringOnPublish>True</UpdateDiagnosticsConnectionStringOnPublish>
</ProjectReference>
构建服务器正在运行TeamCity 8.1.3,并安装了以下内容:
如何说服我们的构建服务器正确构建它,而不是期望Node.js项目发出.exe文件?