2012-04-21 93 views
0

我正在向Heroku部署Sinatra应用程序。我正在使用Bundler来处理我的依赖关系。当我在我的机器上运行它时,它没有问题。我这个使用Bundler部署Sinatra应用程序到Heroku - 找不到宝石

config.ru

require "rubygems" 
require "bundler" 

require "net/http" 
require "uri" 

Bundler.require 

require './application' 
run Sinatra::Application 

启动它,这

的Gemfile

source :gemcutter 

gem "sinatra" 
gem "aws-s3" 
gem "zipruby" 
gem "bson_ext" 
gem "mongo" 
gem "json" 
gem "sinatra-subdomain" 

当我推它,没有错误。它显示捆绑安装正常。然后,当我访问URL时,我收到一个应用程序错误。查看heroku logs,错误是Unexpected error while processing request: undefined method 'subdomain' for main:Object。这是指我正在使用的sinatra-subdomain gem。如果我注释掉子域部分,下一个gem,aws/s3会给出错误。我无法在文档中找到任何帮助。

谢谢。

回答

0

您是否运行相同版本的Ruby?在本地计算机上比较heroku stackruby -v。我还会从heroku日志中发布更长的堆栈跟踪:heroku logs -n10000

+0

谢谢,这是问题所在。我有1.9.3,需要1.9.2。工作很好。 – V9801 2012-04-22 21:45:57