【发布时间】:2012-01-14 09:55:00
【问题描述】:
我是 Ruby 和 Heroku 世界的新手,我正在尝试在 heroku 上部署一个非常基本的 Sinatra 应用程序。我有以下文件:
config.ru:
require './hi'
run Sinatra::Application
hi.rb:
require 'rubygems'
require 'sinatra'
get '/' do
"Hello from Sinatra on Heroku!"
end
.宝石
sinatra
当推送到 heroku 并启动应用程序时,它会崩溃并在日志中显示以下条目:
2011-05-03T05:52:02+00:00 app[web.1]: /app/.gems/gems/sinatra-1.2.5/lib/sinatra/base.rb:1144:in `define_method': tried to create Proc object without a block (ArgumentError)
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/sinatra-1.2.5/lib/sinatra/base.rb:1144:in `compile!'
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/sinatra-1.2.5/lib/sinatra/base.rb:1129:in `route'
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/sinatra-1.2.5/lib/sinatra/base.rb:1111:in `get'
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/sinatra-1.2.5/lib/sinatra/base.rb:1474:in `send'
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/sinatra-1.2.5/lib/sinatra/base.rb:1474:in `get'
2011-05-03T05:52:02+00:00 app[web.1]: from ./hi.rb:4
2011-05-03T05:52:02+00:00 app[web.1]: from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
2011-05-03T05:52:02+00:00 app[web.1]: from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
2011-05-03T05:52:02+00:00 app[web.1]: from config.ru:1
2011-05-03T05:52:02+00:00 app[web.1]: from /home/heroku_rack/heroku.ru:23
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/rack-1.2.2/lib/rack/builder.rb:46:in `instance_eval'
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/rack-1.2.2/lib/rack/builder.rb:46:in `initialize'
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/rack-1.2.2/lib/rack/builder.rb:63:in `new'
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/rack-1.2.2/lib/rack/builder.rb:63:in `map'
2011-05-03T05:52:02+00:00 app[web.1]: from /home/heroku_rack/heroku.ru:18
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/rack-1.2.2/lib/rack/builder.rb:46:in `instance_eval'
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/rack-1.2.2/lib/rack/builder.rb:46:in `initialize'
2011-05-03T05:52:02+00:00 app[web.1]: from /home/heroku_rack/heroku.ru:11:in `new'
2011-05-03T05:52:02+00:00 app[web.1]: from /home/heroku_rack/heroku.ru:11
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/rack-1.2.2/lib/rack/builder.rb:46:in `instance_eval'
2011-05-03T05:52:02+00:00 app[web.1]: from /app/.gems/gems/rack-1.2.2/lib/rack/builder.rb:46:in `initialize'
2011-05-03T05:52:02+00:00 app[web.1]: from /home/heroku_rack/heroku.ru:1:in `new'
2011-05-03T05:52:02+00:00 app[web.1]: from /home/heroku_rack/heroku.ru:1
2011-05-02T22:52:03-07:00 heroku[web.1]: State changed from starting to crashed
任何帮助将不胜感激。
【问题讨论】:
-
搜索表明1.2.5是你的问题:stackoverflow.com/questions/5845278/…
-
谢谢!那成功了。我不得不将我的 .gems 文件更改为:sinatra --version 1.2.3