Git push heroku错误

0 ruby heroku

我正在尝试将应用程序推送到Heroku:'git push heroku master',但是收到错误:

c:\ Sites\rails_project\first_app> git push heroku master
计数对象:63,完成.
Delta压缩最多使用2个线程.
压缩对象:100%(49/49),完成.
写作对象:100%(63/63),25.95 KiB,完成.
总计63(delta 2),重用0(delta 0)

-----> Heroku接收推送
----->检测到Ruby/Rails应用
----->使用Bundler版本1.2.0.pre安装依赖项
运行:bundle install --without development:test --path vendor/bundle -binstubs bin/
https://rubygems.org/获取gem元数据.........
安装rake(0.9.2.2)
安装i18n(0.6.0)
安装multi_json(1.3.6)
安装activesupport (3.2.1)
安装构建器(3.0.0)
安装activemodel(3.2.1)
安装erubis(2.7.0)
安装行程(1.0.4)
安装机架(1.4.1)
安装机架缓存(1.2)
安装机架 - test(0.6.1)
安装远足(1.2.1)
安装倾斜(1.3.3)
安装链轮(2.1.3)
安装动作包(3.2.1)
安装mime-types(1.19)
安装多语言(0.3.3)
安装树梢(1.4.10)
安装邮件(2.4.4)
安装actionmailer(3.2.1)
安装arel(3.0.2)
安装tzinfo(0.3.33)
安装activerecord(3.2.1)
安装activeresource(3.2.1)
使用bundler( 1.2.0.pre)
安装coffee-script-source(1.3.3)
安装execjs(1.4.0)
安装coffee-script(2.2.0)
安装rack-ssl(1.3.2)
安装带有本机扩展的json(1.7.3)
安装rdoc(3.12)
安装thor(0.14.6)
安装railties(3.2.1)
安装咖啡轨(3.2.2)
安装jquery-rails(2.0.2)
安装导轨(3.2.1)
安装sass(3.1.20)
安装sass-rails(3.2.5)
安装sqlite3( 1.3.3)使用原生扩展
Gem :: Installer :: ExtensionBuildError:错误:无法构建gem原生张力.
/usr/local/bin/ruby​​ extconf.rb
检查sqlite3.h ...没有
sqlite3.h丢失.尝试'port install sqlite3 + universal'
或'yum install sqlite3-devel'并检查共享库搜索pat
(sqlite3共享库所在的位置).
*extconf.rb失败*
由于某些原因无法创建Makefile,可能缺少
必要的库和/或标头.检查mkmf.log文件以获取更多
详细信息.您可能需要配置选项.
提供的配置选项: -
with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include = $ {opt-dir}/include
--with-opt-lib
- without-opt-lib = $ {opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir =.
--curdir
--ruby =/usr/local/bin/ruby
--with-sqlite3-dir
--without-sqlite3-dir
--with-sqlite3-include
--without-sqlite3-include = $ {sqlite3-dir}/include
--with-sqlite3-lib
--without-sqlite3-lib = $ {sqlite3-dir}/lib
Gem文件将保留在/ tmp/build_3kebgpytmvg9c/vendor/bund /ruby/1.9.1/gems/sqlite3-中1.3.3进行检查.
结果记录到/tmp/build_3kebgpytmvg9c/vendor/bundle/ruby/1.9.1/gem sqlite3-1.3.3/ext/sqlite3/gem_make.out
安装sqlite3(1.3.3)时发生错误,而Bundler无法识别.
确保gem install sqlite3 -v '1.3.3'在Bundlin之前成功
!
!无法通过Bundler安装gem.
!
!Heroku推送拒绝,无法编译Ruby/rails应用程序

到git@heroku.com:electric-mountain-4030.git
![远程拒绝]主 - >主(预接收挂钩拒绝)
错误:未能将某些引用推送到'git@heroku.com:electric-mountain-4030.git'


我make install sqllite3,但是:

c:\ Sites\rails_project\first_app> gem install sqlite3
-v'1.3获取:sqlite3-1.3.3-x86-mingw32.gem(100%)


您已经安装了sqlite3的二进制版本.
它是使用SQLite3版本3.7.3构建的.
建议使用完全相同的版本以避免po

在构建此gem时,需要
在以下下载中获取必要的DLL文件:

http://www.sqlite.org/sqlitedll-3_7_3.zip

您可以将此包中的sqlite3.dll放在y目录中,例如C:\ Ruby\bin

================================================== ==========已
成功安装sqlite3-1.3.3-x86-mingw32

安装1个gem 为sqlite3-1.3.3-x86-mingw32安装ri文档...为sqlite3-1.3.3-
安装RDoc文档x86架构的mingw32.
错误:执行gem时...(Gem :: FilePermissionError)
您没有对js目录的写权限.

谢谢

Mis*_*cha 5

Heroku使用PostgreSQL数据库而不是SQLite.所以你必须在你的Gemfile中做这样的事情:

group :development do
  gem 'sqlite3'
end

group :production do
  gem 'pg'
end
Run Code Online (Sandbox Code Playgroud)

这样你就可以在开发中使用SQLite,在生产中使用PostgreSQL(在Heroku上).使用这些设置,Heroku不会尝试安装SQLite gem,这会导致错误.