簡體   English   中英

檢查 gem 版本號

[英]Check gem version number

我的設置:Rails 3.0.9,Ruby 1.9.2

我想通過 Rails 控制台檢查我的應用程序的 gem 版本。 在我的 gemfile 中,我有

gem 'rack', '1.2.3'

運行捆綁安裝后。 在 Rails 控制台中,

>> Rack.version
=> "1.1"

知道為什么嗎?

更新

Gemfile.lock

GEM
  remote: http://rubygems.org/
  specs:
    actionpack (3.0.9)
      ...
      rack (~> 1.2.1)
      ...

    rack (1.2.3)

    rack-mount (0.6.14)
      rack (>= 1.0.0)

    warden (1.0.4)
      rack (>= 1.0)

DEPENDENCIES
...  
rack (= 1.2.3)
...

gemfile.lock列出了幾個機架版本。

Rack.version

將返回協議版本,

Rack.release

可能就是您要找的東西。

https://github.com/rack/rack/blob/master/lib/rack.rb#L14

否則:

Gem.loaded_specs["rack"]

例子:

Gem.loaded_specs["rack"]
# => #<Gem::Specification name=rack version=1.3.2> 
Gem.loaded_specs["rack"].version
# => #<Gem::Version "1.3.2"> 
Gem.loaded_specs["rack"].version.to_s
# => "1.3.2"

每個 gem 都有 ::VERSION 常量..所以只需在控制台中使用 Rack::VERSION 或 OpenSSL::VERSION 這應該會給你在該控制台中加載的 gem 版本。

也許你安裝了多個版本的 rack,嘗試運行gem uninstall rack看看它是否提供了兩個選項供你選擇,Rack 1.1 和 Rack 1.2.3。 如果是這樣,請選擇卸載 Rack 1.1。

如果這仍然不起作用,只需卸載 Rack 並嘗試運行 bundle update。

我在使用多個 rake 版本 0.8.7 和 0.9.2 時遇到了這個問題,這對我有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM