为什么我的TFS构建没有构建所需的库?

时间:2017-02-14 06:09:14

标签: git visual-studio tfs

我正在配置TFS 2015构建定义。当我构建本地解决方案时,所有需要的库和引用都构建在我的bin路径中,但是当构建在构建代理上运行时,我缺少一堆引用。我一直在调整复制本地设置并删除/重新添加引用,但没有运气使构建定义创建所有必需的。

如果我在我的解决方案中编辑其中一个项目,我试图在这里构建一个我的例子:

<Reference Include="WebArchitecture.Services.Common">
     <HintPath>..\..\..\Libraries\WebArchitecture.Services.Common.dll</HintPath>
     <Private>True</Private>
</Reference>

这个私有标记是否导致引用不是在构建服务器上构建的,还是其他东西?该解决方案位于C:\ Users \ AKS \ Repositories \ Git \ CUIA \ source \,库位于C:\ Users \ AKS \ Repositories \ Git \ CUIA \ Libraries。

根据Patrick的评论添加其他信息: 我相信我们正在使用XAML。 bin文件夹被检入我们的Git存储库,因此所有需要的文件都应该存在。

1 个答案:

答案 0 :(得分:0)

首先,请仔细检查您是否正确使用正确的相对路径引用dll。

然后,下一步是确保文件被下拉到构建代理/服务器的工作区中。您可以通过检查服务器上的build文件夹来验证。如果它们不存在,则可能存在工作空间映射的问题,这些映射定义了开始构建时要获取的文件夹。

另一种检查方法是在构建代理/服务器上手动构建解决方案。如果服务器上的本地构建成功,则问题可能与您的构建定义设置(例如工作文件夹映射)有关,您需要更多诊断信息。

<强>更新

似乎您的问题是 Bin 文件夹未在Build Server中生成。如果dll存在。作为解决方法,您可以使用构建过程模板中的 CopyDirectory 活动将Bin文件夹复制到构建计算机,请参阅此博客中的示例:TFS Team Build 2010: How to place the build output to a fixed location

您在 CopyDirectory 活动的“目标”属性中指定的目录必须已存在。不复制空目录或子目录。