无法安装 `yt-core` gem

Can't install `yt-core` gem

感谢您阅读这个问题。

$ gem install yt
Successfully installed yt-0.32.4
1 gem installed
$ gem which yt
/Users/klee/.rbenv/versions/2.5.4/lib/ruby/gems/2.5.0/gems/yt-0.32.4/lib/yt.rb
$ gem install yt-core
Successfully installed yt-core-0.1.7
1 gem installed
$ gem which yt-core
ERROR:  Can't find Ruby library file or shared library yt-core

我一直在尝试安装这个 gem,但它一直说 "Can't find." 你也遇到同样的事情吗?我如何安装和找到这个 gem?这是 gem 我正在尝试安装 https://rubygems.org/gems/yt-core

来自 the documentation:

GEM WHICH

Find the location of a library file you can require

因此,当您调用 gem which 时,您需要提供您可能需要的实际模块,而不仅仅是 gem 的名称。如果您查看 yt gem 的 the source,您将看到以下结构:

lib/
  yt.rb

你会注意到 yt.rb 的内容是:

module Yt
end

因此,当您调用 gem which yt 时,它能够找到该模块并告诉您在哪里可以找到它。 (lib/yt.rb)

但是如果您查看 the source for yt-core,您会发现 lib/ 目录中没有文件,而是所有文件都在 lib/yt:

lib/
  yt/
    ...
    core.rb
    ...

the source for core.rb是:

module Yt
end

所以如果要找到模块的位置,需要运行:

gem which yt/core
/Users/foo/.rvm/gems/ruby-2.6.3/gems/yt-core-0.1.7/lib/yt/core.rb

yt/channelyt/group

因此,要使用此 gem,您需要将其包含在您的来源中:

require 'yt/core'