2016-09-30 116 views
0

我有一个我使用的目前取决于谷歌api客户端v 0.8x的宝石,我想更新宝石来支持谷歌api客户端v 0.9x 。支持两个不兼容的宝石版本的依赖

这两者之间的身份验证完全不同且不兼容。

有没有办法知道哪个版本的gem依赖被安装并相应地执行? 因此,我可以为那些因为任何原因升级API客户端的人员添加支持,同时继续允许仍在旧版本中的人员使用它。

回答

1

您可以从Google::Apis::VERSION获得版本。在“gem模块”(其中嵌套gem的其余部分的模块)中声明版本是一个常量,在gem中非常标准。

您可以使用rubygems从任何已安装的gem的gemspec中提取版本。如果您不知道VERSION是如何嵌套的,或者即使gem仅指定gemspec中的版本,这也会很有用。

require "rubygems" 

spec = Gem::Specification::load("google-api-client.gemspec") 
puts spec.version 
相关问题