【发布时间】:2012-05-20 21:13:30
【问题描述】:
我正在构建一个本地 gem,我希望能够在 pry 中测试和使用它。我正在通过 bundle gem blah 创建我的 gem。
-
gem list显示宝石。 -
gem contents blah确认它已安装在我的 GEMPATH 中的某个位置。 -
gem "blah", :path => "path/to/gem"使其在 Rails 控制台中可用。
但是当我简单地尝试并要求它时,它的内部 require "file" 代码似乎不起作用。我开始了一个具有以下结构的示例 gem:
├── Gemfile
├── LICENSE
├── README.md
├── Rakefile
├── blah.gemspec
├── lib
│ ├── blah
│ │ ├── ugh.rb
│ │ └── version.rb
│ └── blah.rb
└── pkg
└── blah-0.0.1.gem
/lib/blah.rb 的开头是:
require "blah/version"
require "blah/ugh"
当我尝试在 pry、IRB 或 ruby -rubygems -e 'require "blah"' 中加载它时,我得到:
~/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require': cannot load such file -- blah/ugh (LoadError)
任何想法可能导致这种差异?我觉得我正在按照 Bundler 和其他 gem 建立的做法按顺序做事,但也许我在某个地方出错了。
【问题讨论】: