【问题标题】:Ruby: Getting a gem's name for requireRuby:为 require 获取 gem 的名称
【发布时间】:2011-07-17 19:12:11
【问题描述】:

我刚刚安装了名为“unicode”的 unicode-gem,但我不能使用 require "unicode" 来要求它。

有一个命令可以检索您需要的 gem 的名称,但我忘记了它,无法通过 google 找到它。

又是怎么回事?

【问题讨论】:

标签: ruby gem require


【解决方案1】:

这似乎应该是 gem 规范的一部分。所以我一直在寻找 rubygems gem 的一些模块,看看是否有办法以编程方式找出正确的 require 字符串。到目前为止,我还没有找到任何东西。对我来说,这似乎是一个洞;我遇到了你所说的问题,这很痛苦。 gem-writers 是知道字符串的人,所以它应该在 *.gemspec 文件中。

我的建议是在命令行中运行gem env,并在“GEM PATHS”显示的目录中运行cd,然后进入gems 目录,然后是相关 gem 的目录。在该目录中查找 README 或类似文件并查看它们的内容。如果没有找到运行:

grep -r require *

然后查看可能的候选字符串的结果。如果有“test”目录,请先将“*”更改为“test”,以将结果减少到更有可能的命中。

例如,Net::SSH gem 被称为“net-ssh”,但它的 gem 需要使用 net/ssh。用 grep 搜索显示了很多 require 'net/ssh' 的实例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-17
    • 2020-09-07
    • 1970-01-01
    • 2015-10-24
    • 1970-01-01
    相关资源
    最近更新 更多