【问题标题】:TFS Hosted Build Controller - Microsoft.TextTemplating.targets not foundTFS 托管构建控制器 - 未找到 Microsoft.TextTemplating.targets
【发布时间】:2013-08-22 19:42:15
【问题描述】:

我已经调试了一天的问题,但似乎无法弄清楚。也许其他人遇到了类似的事情并可以提供一些启示?

我们已将解决方案中项目内的所有 T4 模板配置为在项目构建时运行,如 shift-ctrl-b。这很好用 - 它要求我们将此导入语句添加到项目 .csproj 文件中:

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\TextTemplating\Microsoft.TextTemplating.targets"/>

我们通过 Visual Studio 2012 和云 TFS (tfs.visualstudio.com) 设置了持续集成。当我们的解决方案在 TFS 的托管控制器上构建时,我们不断收到以下错误:

未找到导入的项目“C:\Program Files\MSBuild\Microsoft\VisualStudio\v10.0\TextTemplating\Microsoft.TextTemplating.targets”。确认声明中的路径正确,并且该文件存在于磁盘上。

在我们的开发机器上,该文件存在,因此问题似乎是该文件在托管构建服务器上不存在。

如果我们对这个假设是正确的,除了安装我们自己的 TFS 构建服务器之外,还有其他解决方法吗?

【问题讨论】:

    标签: tfs msbuild azure-devops t4


    【解决方案1】:

    我怀疑托管的构建服务器上是否装有 Visual Studio 2010 (v10.0)。

    您可以获取托管构建服务器上当前安装的列表here,Tarun Arora 有更多详细信息here

    对于您的问题,请尝试使用 11.0 版本(适用于 VS2012):

    <Import Project="$(MSBuildExtensionsPath)
        \Microsoft\VisualStudio\v11.0\TextTemplating\Microsoft.TextTemplating.targets"/>
    

    更好的方法是使用VisualStudioVersion MSBuild 属性:

    <Import Project="$(MSBuildExtensionsPath)
        \Microsoft\VisualStudio\v$(VisualStudioVersion)\TextTemplating\Microsoft.TextTemplating.targets"/>
    

    这将确保托管构建服务器的未来更新不会影响您的代码。 阅读here了解更多详情。

    【讨论】:

    • 感谢您回来。我最初使用的是 v11.0,但仍然收到同样的错误。
    • 是的 也不适合我
    • 我和 Tarun Arora 开发了一个 Visual Studio 扩展,用于在托管构建服务器上安装软件。这有助于您在 Visual Studio 中查看详细信息。它适用于 Visual Studio 2012/2013。从这里下载:-Avanade Extensions for VS2012-Avanade Extensions for VS2013
    • 很高兴使用v$(VisualStudioVersion),但在 VS2013 中找不到 TextTemplating
    【解决方案2】:

    也许有些文件丢失了。 :) 所以我处于同样的情况。这是解决方案。

    正确的解决方法是安装

    Microsoft Visual Studio 2010 可视化和建模 SDK http://www.microsoft.com/en-us/download/confirmation.aspx?id=23025

    创建文件夹

    C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\TextTemplating 和文件 Microsoft.TextTemplating.targets 等

    Microsoft Visual Studio 2012 可视化和建模 SDK http://www.microsoft.com/en-us/download/confirmation.aspx?id=30680

    创建文件夹

    C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\TextTemplating 和文件 Microsoft.TextTemplating.targets 等

    享受吧! ;)

    附: Microsoft Visual Studio 2010 Visualization & Modeling SDK 在此处创建文件夹

    C:\程序文件 (x86)\MSBuild\Microsoft\VisualStudio\TextTemplating\v10.0

    【讨论】:

      【解决方案3】:

      Microsoft.TextTemplating.targets 文件带有您可能不需要的开销(Microsoft Visual Studio 的建模 SDK)。您很可能会使用在构建时进行转换的简单 NuGet 包(使用 TextTransform.exe):Clarius.TransformOnBuild

      更多信息见作者blog post

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-07-18
        • 1970-01-01
        • 2016-07-30
        • 2013-11-11
        • 1970-01-01
        • 2013-05-11
        • 2012-09-07
        相关资源
        最近更新 更多