问题描述
我一直无法将我的Ruby on Rails应用推送到Heroku,因为它一直试图安装sqlite3,而Heroku只使用Postgresql。我已经按照这些帖子的指示:
$ b
将我的sqlite3 gem设置为仅用于开发和测试组,并确保其他宝石不依赖于它,并确保我事先做好git commit。它仍然给我相同的sqlite3.h缺少错误。我注意到的一件事是,当我运行gem dependency命令时,我发现在开发阶段依赖于sqlite3的一些gem,我认为这很好,但也许不是。虽然我无法找到那些宝石的安装位置。它们是:
$ b $ gem-as-taggable-on-2.3.3
Gem client_side_validations-3.2。 1
宝石黄瓜 - 铁轨-1.3.0
宝石factory_girl-4.1.0
宝石fixture_builder-0.3.4
宝石kaminari-0.14.1
Gem orm_adapter-0.4.0
每个列表都像sqlite3(> = 0,development)这样的依赖项。
任何人有任何想法?
- 编辑 -
这是我的gem文件: / p>
source'https://rubygems.org'
gem'rails','3.2.11'
#Bundle Edge Rails改为:
#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仅用于资产并且在生产环境中不需要
#。
group:assets do
gem'sass-rails','〜> 3.2.3'
gem'咖啡栏','〜> 3.2.1'
#请参阅https://github.com/sstephenson/execjs#readme了解更多支持的运行时间
#gem'therubyracer',:platforms => :ruby
gem'uglifier','> = 1.0.3'
end
gem'jquery-rails'
#gem'devise'
##gem 'omniauth'
gem'omniauth-facebook'
I haven't been able to push my Ruby on Rails app to Heroku because it keeps trying to install sqlite3, and Heroku only uses Postgresql. I've followed the instructions of these posts:
Deploying RoR app to Heroku with Sqlite3 fails
Can't push to heroku - sqlite3.h is missing
Setting my sqlite3 gem to only be used in the development and test group, and making sure other gems aren't dependent on it, and making sure I do a git commit beforehand. It still gives me the same "sqlite3.h is missing" error. The one thing I've noticed is that when I run the "gem dependency" command I found a few gems that were dependent on sqlite3 in the development phase, which I thought was ok, but maybe it isn't. I can't find where those gems are being installed though. They are:
Gem acts-as-taggable-on-2.3.3
Gem client_side_validations-3.2.1
Gem cucumber-rails-1.3.0
Gem factory_girl-4.1.0
Gem fixture_builder-0.3.4
Gem kaminari-0.14.1
Gem orm_adapter-0.4.0
And each lists something like "sqlite3 (>= 0, development)" as a dependency.Anyone have any ideas?
--EDIT--
Here's my gem file:
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'
I figured it out. I was working off a different branch than the master, but pushing the master. Once I changed that it worked. Thanks everyone for helping!
这篇关于由于Sqlite3部署RoR应用程序失败(已尝试其他帖子)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!