【发布时间】:2014-05-13 16:51:46
【问题描述】:
我已经安装了 sinatra gem 并且在 irb 中,如果我输入的话,
require 'sinatra'
它返回true。
但是当我这样做时
rackup -d config.ru
它告诉我
nil
Exception `LoadError' at /usr/local/lib/ruby/1.9.1/rubygems/custom_require.rb:36 - cannot load such file -- sinatra
这是我的config.ru
require './app'
set :environment, ENV['RACK_ENV'].to_sym
set :app_file, 'app.rb'
disable :run
run Sinatra::Application
app.rb
require 'rubygems'
require 'sinatra'
get '' do
'Hello World'
end
我不知道出了什么问题。
$ which ruby
/usr/local/bin/ruby
$ which rackup
/usr/local/bin/rackup
$ ruby -v
ruby 1.9.3p374 (2013-01-15 revision 38858) [x86_64-linux]
$ rackup -v
Rack 1.2 (Release: 1.5)
【问题讨论】:
-
你能在 irb 中做
require 'rack'吗? -
@matt 它返回
true -
可以直接用
ruby app.rb运行应用吗? -
@matt 它给出了
config.ru:3:in':未定义的方法 to_sym' for nil:NilClass (NoMethodError)。我想它需要机架环境。 -
您似乎尝试过
ruby config.ru。试试ruby app.rb。但鉴于它在要求您的应用程序后失败,我认为我们更接近于解决正在发生的事情。能否给出which ruby和which rackup的结果?