2012-07-30 88 views
3

當我做Heroku的推失敗,出現錯誤 「而安裝的sqlite3 - 紅寶石(1.2.5)時出現錯誤」

git push heroku master 

我得到以下信息:

 An error occurred while installing sqlite3-ruby (1.2.5), and Bundler cannot continue. 
     Make sure that `gem install sqlite3-ruby -v '1.2.5'` succeeds before bundling. 
! 
!  Failed to install gems via Bundler. 
! 
!  Heroku push rejected, failed to compile Ruby/rails app 

我有libsqlite3 -dev,libsqlite3-0,SQLITE3所有已安裝的,當我運行:

gem install sqlite3-ruby -v '1.2.5' 

的錯誤信息提示,它成功地安裝:

Successfully installed sqlite3-ruby-1.2.5 
1 gem installed 
Installing ri documentation for sqlite3-ruby-1.2.5... 
Installing RDoc documentation for sqlite3-ruby-1.2.5... 

我不確定可能是什麼問題。

我的Gemfile是:

source 'http://rubygems.org' 
gem 'rails', '3.0.1' 
gem 'sqlite3-ruby', '1.2.5',:require => 'sqlite3' 

我想知道是什麼問題,我怎麼能解決呢?

回答

8

Heroku不支持sqlite3。

所以,你需要改變你的Gemfile是:

group :development, :test do 
    gem 'sqlite3' 
end 

group :production do 
    gem 'pg' 
end 

,並再次運行bundle install

+2

記住推到Heroku的前提交。 – countunique 2013-06-19 00:50:29

+0

確保從主人推送。剛碰到我...... – Alex 2016-06-29 07:25:23

0

很確定你必須使用一個Postgres數據庫與Heroku

0

你不能在Heroku上使用SQLite。你需要使用postgres,根據這篇文章:https://devcenter.heroku.com/articles/database

我建議也安裝postgres在本地進行測試和使用它;如果您使用的是OS X,請使用Homebrew進行安裝,否則請嘗試官方postgres站點上的其中一個二進制文件。