2016-09-30 119 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 
相關問題