我们正在将 TFS 2013 服务器升级到 TFS 2015。在这方面,当我尝试使用我们的 XAML 模板构建脚本(已创建)在新版本的构建代理上执行应用程序构建时遇到了问题在 TFS 2013 中)。
我们的大多数解决方案在构建时都使用上述模板。这些解决方案(遗憾的是,仍然)使用安装项目 (.vdproj) 为应用程序生成 MSI 包。为给定的应用程序构建安装项目并生成 MSI;我们称之为devenv.exe(在我们的例子中,它指向 Visual Studio 2013)在我们的模板构建脚本中:
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe /Build "Release|Any CPU" "d:\<path_to_solution>\solution.sln" /Out c:\temp\out.log
然而,在我们新的构建代理上不会生成 MSI,并且调用devenv.exe既不产生任何输出,也不产生任何错误消息。如果我尝试打电话devenv.com然而,它开始构建,但仍然没有生成 MSI。
当事情开始使用时devenv.com看起来它完全忽略了安装项目(我已经检查了构建配置,并且检查了安装项目是否在“发布|任何CPU”配置上进行构建)。
我查看了构建日志、构建过程活动日志,并且还尝试在构建代理上手动执行这些步骤,但我无法找到任何可以为我指明可能导致问题的方向的内容问题。
有谁知道这可能是什么原因?这可能是 TFS Build 2015 的问题吗?据我所知,旧设置和新设置之间的唯一区别如下:
- VS 2013 安装在新构建代理上的 C: 而不是 D: 上,即路径devenv会有所不同,但是只要构建脚本在正确的位置查找并找到它,这就不重要了......
- 我们使用与旧设置不同的放置位置
感谢我能得到的任何帮助和建议。
问题解决了,现在一切都构建成功了。我没有很好地研究用于 TFS Build 2013 的构建代理设置与用于 TFS Build 2015 的构建代理设置之间的差异。
首先,为了能够在 VS 2013 中构建安装项目,需要安装Visual Studio 2013 安装程序项目扩展 https://visualstudiogallery.msdn.microsoft.com/9abe329c-9bba-44a1-be59-0fbf6151054d在构建代理上。
但是,此扩展存在一些错误,通常会导致构建设置项目产生以下错误消息:“验证时发生错误。 HRESULT = '8000000A'”。可以通过修改注册表来修复此错误,如中所述这个帖子 https://stackoverflow.com/questions/8648428/an-error-occurred-while-validating-hresult-8000000a.
但是,使用 devenv.exe 构建安装项目仍然不起作用。我还没能弄清楚为什么。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)