代码之家  ›  专栏  ›  技术社区  ›  mpen

你把你的第三方图书馆放在哪里?

  •  23
  • mpen  · 技术社区  · 15 年前

    我有一堆 .dll HtmlAgilityPack MoreLinq Projects 文件夹,但我总是到处找。有标准的地方放吗?

    7 回复  |  直到 14 年前
        1
  •  14
  •   Patrick Karcher    15 年前

    没有 标准 放置它们的地方,但要确保:

    • 把它们放在一个地方
    • 将它们包含在源代码管理中。

    我将所有必需的dll放在解决方案中名为“Dependencies”的顶级目录中,与项目文件夹平行。我把它们放在源代码管理中,这样当新开发人员检查解决方案时,它就可以立即编译并工作。这是唯一的出路。

    其他

        2
  •  11
  •   IanT8    15 年前

    将“Lib”文件夹与源项目放在同一级别是一种常见的方法。

    老实说,我发现难以管理的不是我的项目所具有的依赖性,而是依赖性所具有的依赖性。我只想提一下NHibernate,温莎城堡,特别是温莎城堡的各种设施。在我的上一个项目中让所有这些人一起玩花费了我很多时间。

    因此,DLL的Lib文件夹对我来说很有用;我通常称之为“共享依赖项”。

    至于开源代码,我没有一个标准的方法来版本化,因为每个项目的结构不同,构建过程也不同。我不喜欢修补开源项目结构或构建方法,因为那样的话,我就要对它负责。如果出于某种原因,它不会建立,或建立不正确,或产生一个错误的DLL,原因将是非常难以追踪,我必须深入到故障排除所有我不关心的。

        3
  •  5
  •   Ian Mercer    15 年前

    在解决方案目录下的文件夹中,例如“external”或“library”。这样,您的持续集成系统(或其他团队成员)就可以从您的源代码管理系统中抽取一个根,并拥有他们所需要的一切。

        4
  •  2
  •   George Handlin    15 年前

    在办公室里,我们在网络上共享参考资产。这些可以是第三方或我们自己的程序集,可以在项目之间共享。

    我也不喜欢把dll文件放在源代码管理中。如果所有的开发人员都能获得共享,所有的工作都会很好。

        5
  •  1
  •   Jeff Mercado    15 年前

    My Documents 这个

    %USERPROFILE%\My Documents\Visual Studio XXXX\Libraries
    
        6
  •  1
  •   user203570 user203570    15 年前

    在我的公司,我们把所有共享的DLL程序集放在一个名为assemblies的文件夹中的网络驱动器上。从那里,我们使用 SyncToy 镜像该文件夹和本地开发机器上的文件夹之间的更改(在我的示例中是C:\Assemblies,其中包含不同版本的子文件夹或有用的第三方程序集)。使用visualstudio项目的“引用路径”特性可以非常容易地仅基于位置选择不同的程序集版本。

    对于家里的项目,我肯定会赞同jeffm提到的将它们放在visualstudio文件夹下的想法 My Documents

        7
  •  1
  •   Jonathan Williams    7 年前

    我对地点没有严格的规定。然而, 我会鼓励一致性

    例如,我需要为我正在为客户机编写的一个小工具验证这个,所以我在Bitbucket中检查了他们的其他代码基,这些代码基似乎使用了 依赖项