一些Ruby功能与Ruby发行版打包在一起(不需要显式地安装为gem或通过安装器安装)。JSON就是一个例子(require 'json'
)。Ruby代码中可能需要它,但不需要安装gem。
然而,JSON是Github上的一个宝石,在https://github.com/flori/json。
那么,当我在代码中需要'json'时,我怎么知道我得到的是哪个版本的gem呢?
一些Ruby功能与Ruby发行版打包在一起(不需要显式地安装为gem或通过安装器安装)。JSON就是一个例子(require 'json'
)。Ruby代码中可能需要它,但不需要安装gem。
然而,JSON是Github上的一个宝石,在https://github.com/flori/json。
那么,当我在代码中需要'json'时,我怎么知道我得到的是哪个版本的gem呢?
3条答案
按热度按时间tzcvj98z1#
或者,许多ruby gem在常量中指定它们的版本。
您可以利用它来确定您在代码或控制台中使用的版本。
brc7rcf02#
您可以找到Ruby主目录,并在其下搜索相应名称的目录,然后检查其
version.rb
文件。例如,使用rvm管理的rubies,我可以这样做(在Posix兼容的系统上,如Linux或Mac OS):我可以
cat ./lib/ruby/3.0.0/json/version.rb | grep 'VERSION '
(包括“VERSION”后面的空格),我得到:..这也是上面清单中包含的
gems
目录中gem的版本。所以我可以看到2.5.1是我的JSON版本。
guykilcj3#
对于那些寻找解决方案的人来说,即使是对于gems或不包含版本信息的常量的文件:
或