在生产项目中使用第三方库/组件时,您是否严格仅使用所述库的已发布版本?

您何时考虑使用库的预发布版或测试版(在生产环境中,在某些情况下)?

如果您遇到库的错误或缺点并且您已经承诺使用它,您是否将补丁应用于库或在代码中创建变通方法?

===============>>#1 票数:2 已采纳

当其他人拥有一个我无法在合理的时间内编写代码的版本或者要求我成为长期无关紧要的专家时,我非常喜欢不编码。

我在生产环境中使用了几个开源组件和库,如Quartz.NET,Log4Net,nLog,SharpFTPLibrary(经过大量修改)等等。 当我第一次发布使用它进入生产的应用程序时,Quartz.NET处于测试阶段。 这是一个非常稳定的测试版,我有源代码,所以我可以调试一个问题,有一些。 当我遇到错误或错误时,我会修复它并将问题发布给错误跟踪器或作者。 我觉得使用测试版产品非常舒服,如果我可以调试任何问题,或者有很多开发人员可以解决任何问题。

===============>>#2 票数:1

我以前在商业项目中使用了beta库,但主要是在开发期间以及供应商可能在我完成产品之前发布最终版本。

例如,我使用Visual Studio 2005 Beta 2开发了一个小型桌面应用程序,因为我知道RTM版本将在我的应用程序最终版本发布之前可用。 我还在另一个项目的开发过程中使用了测试版的FirebirdSQL ADO.NET驱动程序。

对于错误,我尝试发布完整的错误报告,只要有方法可以重现它,但大多数时候你必须找到一个解决方法来尽快发布应用程序。

===============>>#3 票数:0

  • 是。 除非在测试版中有我们真正需要的功能。
  • 如果你不确定你是否会在生产中使用它,那么在开发中使用测试版是毫无意义的。 这似乎是一种浪费的运动
  • 我会用补丁。 为什么要为你付出的代价编写代码?

===============>>#4 票数:0

如果你不确定你是否会在生产中使用它,那么在开发中使用测试版是毫无意义的。 这似乎是一种浪费的运动

好的一点,我也在考虑在开发版中评估预发布版本的情况,但我认为这会污染dev - > test / qa - > prod路径。

我会用补丁。 为什么要为你付出的代价编写代码?

如果它不是商业图书馆,而是开源图书馆怎么办? 如果要应用的补丁不是来自释放实体(例如您自己的补丁),该怎么办?

===============>>#5 票数:0

我用:

  • Infragistics(.NET WinForms控件)
  • LeadTools(视频拍摄)
  • Xtreme ToolkitPro(MFC控件)
  • National Instruments Measurement Studio(计算库,绘图和DAQ)

我发现每一个都有重大错误,所以我尽量限制它们的使用。 Infragisitcs的功能非常好,而National Instruments是迄今为止最好的,尽管非常有限。 我会不惜一切代价避免使用LeadTools。

  ask by Forgotten Semicolon translate from so

未解决问题?本站智能推荐:

4回复

如何使用gradle管理第三方deps的不同支持库版本?

我有一堆第三方库,我包含在我的基础应用程序中。 我无法控制那些第三方模块包含的支持库。 这使我很难在我的应用程序中拥有相同版本的android支持库。 当我可以从每个依赖项中排除某些库时,我知道使用gradle: 然而,有大量的支持库,并将它们全部排除在我的第三方库中,似乎有点
4回复

如何在Tycho构建中使用包含第三方包的目录

过去,我们在文件系统上拥有捆绑包和功能,并通过具有“目录”位置的目标定义文件在Eclipse中提供它们。 通过这种方式,可以很容易地将它们与Eclipse中的Export向导一起使用。 现在我正在尝试使用Tycho构建一个eclipse-plugin ,它具有第三方依赖,例如javax.
2回复

保护Web应用程序中的第三方库

我有一个具有登录页面的Web应用程序。 在源代码中(特别是在<head> ),我可以看到使用的第三方javascript库以及该库的路径,有时还包括该库的版本。 我什至无需身份验证即可访问这些库的代码。 那是安全隐患吗? 例如: 如果是,该如何缓解?
2回复

使用Gradle防止第三方库在编译类路径上

我有一个多项目Gradle构建。 我有Sub-Project-A ,它依赖于Sub-Project-B 。 Sub-Project-B对SLF4J具有编译时依赖性。 我不希望Sub-Project-A能够针对任何SLF4J库进行编译,但在运行时我确实希望Sub-Project-B代码能够运
1回复

我可以在自己的库中对第三方库(例如log4j)创建“轻型”依赖吗?

我正在http://jooq.sourceforge.net上维护用于数据库访问的库,我想使用log4j进行日志记录。 但是日志记录实际上是我的库中非常可选的一部分。 如果客户端代码中没有log4j,则不会进行日志记录。 因此,我创建了一个记录器代理,如下所示: 我的问题是:
1回复

将第三方库复制到Ant / Ivy项目中的/ lib目录

我最近看到了一个包含很多子项目的项目,每个子项目都有一个build.xml和一个ivy.xml 。 在构建这些子项目显然是依赖被复制到声明的所有3方库/lib目录中的每一个子项目。 来自Maven,这看起来真的很奇怪。 这是Ant / Ivy无法从本地~/.ivy2/cache构建
1回复

如何在maven-bundle-plugin中包含第三方库(v2.3.7)

我正在使用servicemix(v4.5.3)并希望通过maven-bundle-plugin将我的应用程序(取决于数百个第三方库)部署为bundle。 下面是我的pom.xml 我已经按照这个来创建bundle,但是当我执行mvn bundle:wrap时它将外部jar转换为bu
2回复

如何通过Maven / Gradle获得有关第三方库更新的通知?

我想使用我在项目中使用的最新版本的第三方库,而无需手动检查它们或盲目地下载构建的最新版本。 在某些构建阶段,我希望收到一个通知,即存在较新版本的依赖项。 有没有办法用Maven / Gradle做到这一点? 或者可能有更好的方法来获得有关较新的依赖版本的通知?
2回复

管理内部第三方依赖关系

我们有很多不同的解决方案/项目,由不同的团队管理。 我们的解决方案需要参考另一个团队拥有的几个项目。 我们不希望将这些依赖项添加为项目引用,因为我们不打算修改该代码,我们只想使用它。 此外,我们的解决方案中已经有相当多的项目,并且不想添加更多项目,因为它会降低Visual Studio的速
1回复

如何替换第三方nuget包的依赖项?

这个问题目前是假设的,但有实际依据。 供应商X的NuGet程序包A取决于供应商Y的NuGet程序包B和Microsoft的System.Runtime。 我们发现有必要将B(它是开源的)分支到B'来修复Y不愿意修复的B中的错误。 让我们说我们在B'后面有几个版本(最终肯定是正确的)