【问题标题】:Team Foundation Build - resolving cross solution project referencesTeam Foundation Build - 解决跨解决方案项目引用
【发布时间】:2010-12-21 20:52:17
【问题描述】:

我们有一个跨多个解决方案引用的共享项目,当遇到 TF 构建时会导致:

'错误 MSB3202:找不到项目文件“......\trunk\\\sharedproject.csproj”'。

这很好,因为构建服务器上的目录结构不反映源代码管理。是否可以修改构建文件以在特定位置搜索此项目?

【问题讨论】:

  • 我最终复制了服务器上工作树中的目录结构。如果/当我发现构建配置可以解决时,我会更新它。

标签: .net version-control tfs msbuild continuous-integration


【解决方案1】:

也许您应该考虑将 dll 引用添加到共享项目而不是项目引用,然后将 dll 包含在您的源代码管理中。如果这不是一个选项,您始终可以创建另一个解决方案文件,该文件引用您构建服务器上共享项目文件的正确路径,并在您的构建服务器上使用该解决方案。不过,我倾向于使用 dll 参考,因为从长远来看,选项二更难维护。

希望对你有帮助。

/克劳斯

【讨论】:

    【解决方案2】:

    我使用构建定义中的工作区选项卡解决了这个问题。

    我的解决方案文件引用了当前项目之外的项目,例如 $/Common 项目。

    要使自动构建工作,构建代理上的工作区需要正确映射。查看生成的错误,我可以确定文件夹的预期位置。

    所以我的工作文件夹中列出了几个不同的项目,构建代理文件夹是构建代理计算机上的位置,而不是我的本地计算机(这让我陷入了循环)。一切都建立在构建代理上,然后复制到输出目录。

    【讨论】:

      猜你喜欢
      • 2012-03-04
      • 2011-01-07
      • 1970-01-01
      • 2012-02-26
      • 2014-01-18
      • 2011-05-31
      • 2011-06-24
      • 1970-01-01
      • 2011-12-11
      相关资源
      最近更新 更多