昨天我问了一个关于推动Heroku的问题..它没有用,然后突然开始工作了。我一无所获。现在在一个新的应用程序,我有完全相同的问题。我决定将我的整个Gemfile包含在内,希望能在没有这种令人难以置信的挫败感的情况下继续使用
source 'https://rubygems.org'
gem 'rails', '3.2.11'
group :production, :staging do
gem "pg"
end
group :development, :test do
gem "sqlite3-ruby", "~> 1.3.0", :require => "sqlite3"
end
group :development do
gem 'rspec-rails', '2.3'
end
group :test do
gem 'rspec-rails', '2.3'
end
# 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', :platforms => :ruby
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 app server
# gem 'unicorn'
# Deploy with Capistrano
# gem 'capistrano'
# To use debugger
# gem 'debugger'
更新gem文件后,我跑了:
$bundle install
$git add Gemfile
$git add Gemfile.lock
$git git commit -m "message"
$git push heroku master
我仍然收到此错误
An error occurred while installing sqlite3 (1.3.7), and Bundler cannot continue.
Make sure that `gem install sqlite3 -v '1.3.7'` succeeds before bundling.
!
! Failed to install gems via Bundler.
!
! Heroku push rejected, failed to compile Ruby/rails app
To git@heroku.com:warm-dusk-1436.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:warm-dusk-1436.git'
答案 0 :(得分:3)
看起来它在安装sqlite3
gem时遇到了问题,这个gem在你的Gemfile中指定安装在所有环境中,即使Heroku不会使用它。
尝试将gem 'sqlite3'
移至开发组,以便您的生产环境不会尝试安装它。