visual-studio-2012 - 如何确定是否为 TFS 构建定义执行了 MSBUILD 参数

标签 visual-studio-2012 tfs msbuild build-agent

我使用的是 Team Foundation Service 2012,内部托管了一个构建 Controller ,因此我可以将应用程序部署到我们的 Web 服务器。我设置了构建定义,并使用了我的调试配置,并提供了以下 MSBUILD 参数。

/p:DeployOnBuild=true /p:DeployTarget=MSDeployPublish /p:MSDeployPublishMethod=WMSVC /p:MSDeployServiceUrl=https://myserversname:8172/msdeploy.axd /p:AllowUntrustedCertificate=true /p:DeployIisAppPath="somesite.ourdomain.com" /p:Username=na\svc-users /p:Password=PASS /p:VisualStudioVersion=11.0

该解决方案构建得很好,我没有收到任何警告或错误。当我去我的部署服务器时,应用程序是空的。我已经设置了 Web 应用程序文件夹和 inetsrv 文件夹的权限。我还安装/配置了 web 部署。如果我没有收到任何错误返回,我怎么知道我的部署出了什么问题?我已经检查了构建服务器和部署服务器上的事件日志,都没有任何错误或警告。我也可以从我的开发机器上发布,它可以完美地使用完全相同的参数。

最佳答案

将这两个文件夹及其内容从您的开发环境复制到构建服务器:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications

这些文件夹是由通过 Visual Studio 2012 发布引起的依赖项。在 .sln 文件中引用了此依赖项。

不幸的是,这意味着 Web 部署正在悄无声息地失败。

或者,您可以在构建服务器上安装 Visual Studio,但这会浪费许可证。

关于visual-studio-2012 - 如何确定是否为 TFS 构建定义执行了 MSBUILD 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15644635/

相关文章:

.net - 在发布和 checkin Team Foundation Server (TFS) 期间增加版本

c# - 如何在 .NET 核心中使用 .settings 文件?

msbuild - UWP - 使用 msbuild 从命令行更改应用程序包名称

javascript - 带有 WebSocket 的 typescript

java - 如何使用 Team Explorer Everywhere 创建代码审查请求?

c# - 从 MySQL 中获取元组的值到字符串数组

tfs - VS2015 缺少禁止模式策略?

tfs - 团队成员看不到TFS repo

visual-studio-2012 - TypeScript DefinitelyTyped Ember.js d.ts 无法编译

c# - DotNetOpenAuth 在修改后编译但在运行示例项目时抛出运行时异常