Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby gem#u原件#u要求';:没有要加载的文件--sinatra(LoadError)_Ruby_Rubygems_Gem_Sinatra - Fatal编程技术网

Ruby gem#u原件#u要求';:没有要加载的文件--sinatra(LoadError)

Ruby gem#u原件#u要求';:没有要加载的文件--sinatra(LoadError),ruby,rubygems,gem,sinatra,Ruby,Rubygems,Gem,Sinatra,我在本地机器上工作。如果我使用Sinatra应用程序,那么将此行添加到myapp.rb require 'sinatra' 当我走到控制台,我跑 irb -r myapp.rb 我得到这个错误 gem_original_require': no such file to load -- sinatra (LoadError) 我知道我的IRB或Ruby路径看起来不正确。我正在使用(Simple Ruby Version Management:rbenv)来管理Ruby环境,不太确定这是否会

我在本地机器上工作。如果我使用Sinatra应用程序,那么将此行添加到myapp.rb

require 'sinatra'
当我走到控制台,我跑

irb -r myapp.rb
我得到这个错误

gem_original_require': no such file to load -- sinatra (LoadError)
我知道我的IRB或Ruby路径看起来不正确。我正在使用(Simple Ruby Version Management: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/  
尝试:


如果您使用的是config.ru文件,那么该路径也应该反映在那里。

在我的例子中,我使用的是rvm。尽管我配置了和.rvmrc文件,并保证安装了sinatra后使用的是正确的gemset,但我仍然会遇到相同的错误

然后我尝试在我的原生ruby版本中安装sinatra:

gem install sinatra
我还必须为我试图运行的sinatra应用程序安装sqlite适配器:

gem install sqlite3
最后,我开始运行scanty blog():


它起作用了,但我认为它不是最好的解决方案。

在您的
myapp.rb
文件中需要sinatra之前,您是否添加了
require'rubygems'
?@Casper他使用的是1.9.2,所以应该不需要rubygems。我尝试过
require rubygems
,但正如@bloudermilk所说的那样,我使用的是Ruby1.9.2。我一直认为这与ruby管理工具rbenv有关。我不知道。我不知道如何解决这个问题。命令
irb
只是一个控制台,我不认为as喜欢
ruby-r
,尽管irb的帮助文档描述了这样的内容。你可以试试这个
ruby-r myapp.rb
,并确保Sinatra在gem列表中(请参阅
gem list
)我正在开发Sinatra应用程序,我只想与控制台交互。我发现一条提示说,
irb-rmyapp.rb
将是这样做的方法。
gem install sqlite3
ruby main.rb