rails 3.2.0和heroku

时间:2012-01-21 13:27:39

标签: ruby ruby-on-rails-3 heroku activemodel

嘿伙计我在使用rails 3.2.0&amp ;;时遇到了一些麻烦。 ruby 1.9.3,我只使用rails new命令创建了一个新的应用程序,我正在尝试部署到heroku。我遇到以下应用错误:

应用程序中发生错误,无法提供您的页面。请稍后重试。 如果您是应用程序所有者,请查看日志以获取详细信息。

运行 heroku日志后,我收到以下错误:

无法在任何来源中找到activemodel-3.2.0

提前致谢!!!!

的Gemfile

source 'https://rubygems.org'

gem 'rails', '3.2.0'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

gem 'sqlite3'


# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  # gem 'therubyracer'

  gem 'uglifier', '>= 1.0.3'
end

gem 'jquery-rails'

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# To use Jbuilder templates for JSON
# gem 'jbuilder'

# Use unicorn as the web server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'ruby-debug19', :require => 'ruby-debug'

Gemfile.lock文件

GEM
  remote: https://rubygems.org/
  specs:
    actionmailer (3.2.0)
      actionpack (= 3.2.0)
      mail (~> 2.4.0)
    actionpack (3.2.0)
      activemodel (= 3.2.0)
      activesupport (= 3.2.0)
      builder (~> 3.0.0)
      erubis (~> 2.7.0)
      journey (~> 1.0.0)
      rack (~> 1.4.0)
      rack-cache (~> 1.1)
      rack-test (~> 0.6.1)
      sprockets (~> 2.1.2)
    activemodel (3.2.0)
      activesupport (= 3.2.0)
      builder (~> 3.0.0)
    activerecord (3.2.0)
      activemodel (= 3.2.0)
      activesupport (= 3.2.0)
      arel (~> 3.0.0)
      tzinfo (~> 0.3.29)
    activeresource (3.2.0)
      activemodel (= 3.2.0)
      activesupport (= 3.2.0)
    activesupport (3.2.0)
      i18n (~> 0.6)
      multi_json (~> 1.0)
    arel (3.0.0)
    builder (3.0.0)
    coffee-rails (3.2.1)
      coffee-script (>= 2.2.0)
      railties (~> 3.2.0.beta)
    coffee-script (2.2.0)
      coffee-script-source
      execjs
    coffee-script-source (1.2.0)
    erubis (2.7.0)
    execjs (1.3.0)
      multi_json (~> 1.0)
    hike (1.2.1)
    i18n (0.6.0)
    journey (1.0.0)
    jquery-rails (2.0.0)
      railties (>= 3.2.0.beta, < 5.0)
      thor (~> 0.14)
    json (1.6.5)
    mail (2.4.1)
      i18n (>= 0.4.0)
      mime-types (~> 1.16)
      treetop (~> 1.4.8)
    mime-types (1.17.2)
    multi_json (1.0.4)
    polyglot (0.3.3)
    rack (1.4.0)
    rack-cache (1.1)
      rack (>= 0.4)
    rack-ssl (1.3.2)
      rack
    rack-test (0.6.1)
      rack (>= 1.0)
    rails (3.2.0)
      actionmailer (= 3.2.0)
      actionpack (= 3.2.0)
      activerecord (= 3.2.0)
      activeresource (= 3.2.0)
      activesupport (= 3.2.0)
      bundler (~> 1.0)
      railties (= 3.2.0)
    railties (3.2.0)
      actionpack (= 3.2.0)
      activesupport (= 3.2.0)
      rack-ssl (~> 1.3.2)
      rake (>= 0.8.7)
      rdoc (~> 3.4)
      thor (~> 0.14.6)
    rake (0.9.2.2)
    rdoc (3.12)
      json (~> 1.4)
    sass (3.1.12)
    sass-rails (3.2.3)
      railties (~> 3.2.0.beta)
      sass (>= 3.1.10)
      tilt (~> 1.3)
    sprockets (2.1.2)
      hike (~> 1.2)
      rack (~> 1.0)
      tilt (~> 1.1, != 1.3.0)
    sqlite3 (1.3.5)
    thor (0.14.6)
    tilt (1.3.3)
    treetop (1.4.10)
      polyglot
      polyglot (>= 0.3.1)
    tzinfo (0.3.31)
    uglifier (1.2.2)
      execjs (>= 0.3.0)
      multi_json (>= 1.0.2)

PLATFORMS
  ruby

DEPENDENCIES
  coffee-rails (~> 3.2.1)
  jquery-rails
  rails (= 3.2.0)
  sass-rails (~> 3.2.3)
  sqlite3
  uglifier (>= 1.0.3)

7 个答案:

答案 0 :(得分:7)

Rails 3.2应用程序在Cedar上正常运行,我刚刚升级了几个应用程序以在Cedar上运行并且正在Heroku上运行。一旦你更新了你的Gemfile和Gemfile.lock,请确保你同时提交它们并将它们都推送到Heroku。然后Heroku将重新绑定您的应用程序以使用Rails 3.2。

顺便说一句,我没有在我的Gemfiles中的sass-rails或uglifier上指定任何版本号。

当然,您可以在推送到Heroku之前在本地运行的生产模式下进行测试,看看它是否能够正常工作。

答案 1 :(得分:2)

对于它的价值,我在Heroku上遇到了同样的问题 not ,但在我们的一个本地部署服务器上。我们在使用Ruby 1.8.7-p72的服务器上运行。 RubyGems可耻地过时了 - 它上面有v1.3.7。运行gem update --system将其提升到v1.8.15,然后重新部署,就像一个魅力(尽管我们在日志中收到了所有invalid gemspec警告)。

并非特定于Heroku,但希望对像我一样在这里徘徊的任何Google员工有所帮助。

答案 2 :(得分:2)

今天有类似的问题。在创建并推送新应用程序后,heroku说“无法在任何来源中找到multi_json-1.3.1”

这就是我解决它的方法:

  1. 删除本地Gemfile.lock
  2. 运行捆绑安装
  3. 再次推送=&gt;一切顺利

答案 3 :(得分:1)

使用heroku stack检查堆栈。您的应用可能不在'雪松'堆栈上。我有同样的问题,并在'雪松'上重新创建应用程序解决了这个问题。

答案 4 :(得分:0)

我使用了来自“3-2-stable”的最新Rails,问题也已经消失了。

答案 5 :(得分:-1)

升级到rc2,它应该修复它

gem 'rails', '3.2.0.rc2'

答案 6 :(得分:-7)

Heroku仅支持Rails 3.1(雪松堆栈)。