我在我的本地机器上工作。如果我使用Sinatra应用程序,我可以将此行添加到 myapp.rb
require 'sinatra'
当我进入控制台并运行
时irb -r myapp.rb
我收到此错误
gem_original_require': no such file to load -- sinatra (LoadError)
我理解我的IRB或Ruby路径看起来不对。我正在使用(简单Ruby版本管理:rbenv)来管理Ruby环境,如果这会影响事情那么不太确定?我跑了 gem env ,我得到了这个。
RubyGems Environment:
- RUBYGEMS VERSION: 1.8.10
- RUBY VERSION: 1.9.2 (2011-07-09 patchlevel 290) [x86_64-darwin11.0.1]
- INSTALLATION DIRECTORY: /Users/Air/.rbenv/versions/1.9.2-p290/lib/ruby/gems/1.9.1
- RUBY EXECUTABLE: /Users/Air/.rbenv/versions/1.9.2-p290/bin/ruby
- EXECUTABLE DIRECTORY: /Users/Air/.rbenv/versions/1.9.2-p290/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-11
- GEM PATHS:
- /Users/Air/.rbenv/versions/1.9.2-p290/lib/ruby/gems/1.9.1
- /Users/Air/.gem/ruby/1.9.1
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org/
答案 0 :(得分:2)
尝试:
irb -r ./myapp.rb
如果您使用的是config.ru文件,那么该路径也应该反映在那里。
答案 1 :(得分:2)
在我的情况下,我使用的是rvm。即使我配置了.rvmrc文件并确保我使用安装了sinatra的正确gemset,我仍然遇到同样的错误。
然后我尝试在我的原生ruby版本中安装sinatra:
gem install sinatra
我必须安装sqlite适配器以及我试图运行的sinatra应用程序:
gem install sqlite3
最后,我用:
运行了不足的博客(https://github.com/rodrigomes/scanty)ruby main.rb
虽然有效,但我认为这不是最佳解决方案。