2013-01-23 35 views
1

我一直无法将我的Ruby on Rails应用程序推送到Heroku,因为它一直试图安装sqlite3,而Heroku只使用Postgresql。我已经按照这些职位的说明:设置我的sqlite3的宝石只有开发和测试组中使用,并确保其他宝石由于Sqlite3部署RoR应用程序失败(已尝试其他帖子)

Deploying RoR app to Heroku with Sqlite3 fails

Can't push to heroku - sqlite3.h is missing

不依赖于它,并确保我事先做了一次git commit。它仍然给我相同的“sqlite3.h缺少”错误。我注意到的一件事是,当我运行“gem dependency”命令时,我发现在开发阶段依赖于sqlite3的一些gem,我认为这很好,但也许不是。虽然我无法找到那些宝石的安装位置。它们是:

宝石充当-AS-加标签上-2.3.3

宝石client_side_validations-3.2.1

宝石黄瓜轨-1.3.0

宝石factory_girl-4.1。 0

宝石fixture_builder-0.3.4

宝石雷0.14.1

Gem orm_adapter-0.4.0

并且每个列表都像“sqlite3(> = 0,development)”这样的依赖项。 任何人有任何想法?

- 编辑 -

这是我的宝石文件:

source 'https://rubygems.org' 
gem 'rails', '3.2.11' 
# Bundle edge Rails instead: 
# gem 'rails', :git => 'git://github.com/rails/rails.git' 
#group :development, :test do 
# gem 'sqlite3' 
#end 
group :production do 
    gem 'thin' 
    gem 'pg' 
end 
# 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' 
#gem 'devise' 
# #gem 'omniauth' 
gem 'omniauth-facebook' 
+0

你能显示你的Gemfile的相关部分吗? –

+0

@PaulFioravanti刚刚使用我的Gemfile编辑了问题 – bschreck

回答

3

试试这个,在乌拉圭回合的开发和测试中使用sqlite3的,但皮克生产

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

group :production do 
     gem 'thin' 
    gem 'pg' 
end 
+0

谢谢,这是我实际尝试的第一件事,根据堆栈溢出的不同帖子。没有工作 – bschreck

+0

所以出现什么错误?我认为用这段代码,它应该能够在生产服务器上安装PG。 – Nich

+0

这个错误与我之前得到的一样:'安装sqlite3(1.3.7) Gem :: Installer :: ExtensionBuildError:错误:无法构建gem本机扩展。 /usr/local/bin/ruby​​ extconf.rb 检查sqlite3.h ...没有 sqlite3.h丢失.' – bschreck

4

我想通出。我正在做一个与主人不同的分支,但推动主人。一旦我改变了它的工作。感谢大家的帮助!

+0

很高兴你能解决你自己的问题。请接受此作为其他人参考的答案。 –

+0

我理解你所说的话的概念,但我不知道这与实际解决他的问题有什么关系。我不认为我在任何分支工作。你能提供更多的细节吗? – Jeff

相关问题