构建服务器 - 在构建服务器上安装外部控制库(DevExpress)

时间:2011-04-20 22:01:18

标签: .net build-automation devexpress project-organization

什么是正确的方式?

我们的项目有一个构建服务器。 我们有不同的项目,参考不同版本的DevExpress。

  1. 我们应该安装每个DevExpress吗? 构建服务器上的版本或

  2. 每个项目都应该有自己的项目 使用DevExpress程序集的文件夹。

  3. 还有另一种可能的方式吗?
  4. 在我看来:

    优势1:每个开发人员都可以更轻松地维护项目的本地副本。 缺点1:构建服务器上的DevExpress版本地狱,因为必须安装每个新版本。

    优势2:每个项目都可以在没有先决条件的情况下进行构建。 缺点2:每个开发人员必须手动将他的dll放在一个单独的Libs文件夹中。如果您已从工具箱中拖动DevExpress控件,则必须重新组织此dll的引用。

3 个答案:

答案 0 :(得分:1)

使用构建服务器的最佳解决方案和麻烦是在源控件中有一个共享文件夹,如果您在不同项目中使用不同的devexpress版本并在项目中引用这些程序集,则保留devexpress程序集或不同文件夹。除了devexpress dll之外,还将App_Licenses.dll添加到该文件夹​​,并在所有使用devexpress程序集的项目中引用它。当一个新版本的devexpress出来时你需要更新这些DLL,而不是每次都安装一个新的devexpress版本,这样你也可以恢复到以前的版本,如果出现阻塞程序错误,或者甚至运行不同的devexpress版本同一台机器。

此解决方案与Hudson构建集成服务器和svn完美配合。

如果你想在新的devexpress更新中更容易,并且不想每次运行项目转换器来更新引用中的版本号,从你的引用中排除',Version = 10.2.6.0,Culture = neutral,PublicKeyToken = b88d1754d700e49a'所以代替:

<%@ Register TagPrefix =“dxe”Namespace =“DevExpress.Web.ASPxEditors”Assembly =“DevExpress.Web.ASPxEditors.v10.2,Version = 10.2.6.0,Culture = neutral,PublicKeyToken = b88d1754d700e49a”% >

您的参考文件将如下所示:

<%@ Register TagPrefix =“dxe”Namespace =“DevExpress.Web.ASPxEditors”Assembly =“DevExpress.Web.ASPxEditors.v10.2”%>

这样,当程序集名称通过主要版本更改更改为例如时,您将需要很少运行项目转换器。 11.1

答案 1 :(得分:1)

我建议您在Build服务器上安装我们的安装。如果只安装安装,则机器上不会有DLL地狱。这将保证您的项目将使用我们的控件的许可版本构建,因此在现成的应用程序中没有唠叨屏幕。当我们的客户在支持中心提出这样的问题时,我们通常建议这样做......

答案 2 :(得分:0)

最佳解决方案是不必在构建服务器上安装完整产品。相反,你可以在服务器上获得“许可”。

在您的构建计算机上启动安装程序,登录安装程序,当您的产品列表出现时,退出安装程序。 现在你的版本将被授权!