[英]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.