3

我正在学习使用 MSBuild 构建并在我新安装的 Jenkins CI 服务器上运行它们。

我遇到的问题是外部依赖项,例如 Automapper.dll,并且它们不在构建服务器上,因此我的构建失败并显示“无法找到程序集“AutoMapper””,这是可以理解的。

我根本不知道如何处理这个问题。我在 SO 和 Google 上搜索了过去两天,但最终变得更加困惑。我应该以某种方式将这些文件添加到我的 VS 解决方案中,还是应该在某个地方的 SVN 中?

4

3 回答 3

4

最基本和最常见的方法是lib\在源代码管理中创建一个文件夹,并使用相对路径从您的解决方案中引用这些文件夹。这样,构建服务器就可以像开发机器一样定位文件。

一种很好的方法是将NuGet用于包依赖项。JetBrains 的Team City已经开箱即用地支持它。

以下是有关 NuGet 的更多信息,它还展示了它在 Team City 中的工作方式:

于 2012-06-08T12:21:08.117 回答
1

CI 机器需要能够从头开始构建项目。这包括第三方参考。根据我的经验,最简单的方法是在源代码控制结构中的某处创建“第三方”文件夹,然后从该文件夹中引用程序集。

于 2012-06-08T12:04:32.623 回答
0

我们使用 NuGet,它将所有内容都放在“包”文件夹下。只要他们都一个地方,我想你会没事的。

于 2012-06-08T14:13:59.943 回答