如何使自动构建使用与手动构建相同的输出文件夹?

时间:2014-04-17 12:51:45

标签: tfs msbuild azure-devops

背景

目前,我在许多TFS团队项目中都有很多C#项目。

多个C#项目在不同的团队项目中引用C#项目。我这样做是通过引用另一个C#项目的Bin / Release文件夹中的输出dll。

只要我们结帐&以正确的顺序在团队项目中构建解决方案在所有开发人员的机器上一切正常。

我们正在转向使用Visual Studio Online,我正在使用自动构建。

问题

我遇到的问题是它无法找到要引用的dll,即使在输出它们(到\ Bin \ Release)的项目已经运行之后也是如此。

我已禁用并行构建(以确保首先构建引用的项目),这似乎是基于构建日志的情况。问题在于,依赖于这些项目的项目无法找到dll,因此我得到了#34;无法找到类型或名称空间"到处都是错误。

最简单的解决方法是什么?


请注意,我已经阅读了几篇关于此的帖子/教程等,但似乎都涉及更改源代码控制结构,或者摆弄工作区等等。我想要一些可以保持简单工作区映射的内容开发机器,我们映射" $ \"到" C:\ TFS \"。我不想记得定期合并来自共享库的更改,或者在工作区内(在开发机器上)维护大量文件夹映射。

1 个答案:

答案 0 :(得分:0)

使用XML编辑器(而非设计人员)打开您的流程模板xaml(通常为DefaultTemplate.11.1.xamlTfvcTemplate.12.xaml)。在mtbwa:MSBuild活动中查找Run MSBuild for Project。删除OutDir属性,保存并签入。这将强制MSBuild为每个项目使用默认的OutDir。