我能问Ruby或RubyGems的使用最新的宝石,无论其来源?

如在更新这个问题提到的,事实证明,红宝石是使用较旧的github宝石(hmcgowan-袋鼠1.3.5)在已安装最近(ROO 1.3.6)的较新RubyForge的宝石。

我怀疑是魔PIXY(无论是红宝石或RubyGems的)看上去“H”下的“R”下寻找之前。

我可以强制RubyForge的一个被操作的方式被使用

gem "roo"

但有可能告诉红宝石/ RubyGems的,我很高兴为使用hmcgowan,袋鼠小豆或,但我想最新版本?

有帮助吗?

解决方案

不,有不幸的是没有办法。至于RubyGems的来讲,他们是不一样的宝石,所以RubyGems是无法自动确定哪些是最新版本。对于偏执的目的,需要对线路,应考虑非确定性,如果没有创业板方法的调用和你有相同库的多个版本安装。

在一般情况下,你希望你的宝石的方法在不同的地方,位于从您的通话需要反正(这允许文件被延迟加载),所以这是完全合理的,有一个经常更新的文件,只是执行一堆调用宝石的方法,以确保你得到的一切正确的版本。此外,在生产中,你通常不希望做“给我的最新版本”,因为最新版本可能已经改变了它的API或重命名一些方法或相似的,如果你还没有针对它进行测试,你不知道它是否会打破。你应该始终确保您使用的是特定的已知到工作的每一个版本的第三方库的。

作为一个库的作者,我通常会约一个或两个版本抬头的人,如果我打算做那将打破API的老的用法的变化。然而,有时人们并不一段时间更新,并获得由该抓。幸运的是大多数人都小心翼翼,和舞台的东西。不要直接在生产中更新库没有测试他们的人。 : - )

其他提示

您可以使用可能宝石的方法来指定要哪一个。

RubyGems的手册 - 第4章

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top