即使我在开发块中有sqlite,Heroku也不接受push

Bes*_*esi 14 gem ruby-on-rails heroku bundler

我的帖子中有以下几行Gemfile:

gem 'rails', '3.1.1'

group :production do
  gem 'pg'
end        

group :development, :test do
  gem 'sqlite3'
end
Run Code Online (Sandbox Code Playgroud)

我也跑bundle install已经我的Gemfile.lock更新.

当我推送到heroku时,我仍然会收到以下错误:

 !
 !     Failed to install gems via Bundler.
 !     
 !     Detected sqlite3 gem which is not supported on Heroku.
 !     http://devcenter.heroku.com/articles/how-do-i-use-sqlite3-for-development
 !
 !     Heroku push rejected, failed to compile Ruby/rails app
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

Bes*_*esi 25

Hoppla.我在这里犯了一个很傻的错误.我目前正在分支机构,但我把主分支推到Herokum,就像我习惯的那样.

所以git push heroku master推送旧版本的分支,当然不包含我对Gemfile的更改.


Gui*_*ume 10

sqlite3在开发块中,但我最近安装mailcatcher了一个有用的宝石来捕获已发送的电子邮件并在浏览器中显示给您.

mailcatcher具有sqlite3作为一个依赖.将它移回它所属的位置可以解决问题:

group :development, :test  do
    gem 'sqlite3'
    gem 'mailcatcher'
end
Run Code Online (Sandbox Code Playgroud)

如果您有此错误但确定未包含sqlite3在开发模式之外,请查找需要它的其他gem.