コマンドを実行します
heroku create --stack cedar
git Push heroku master
しかし、それは私にエラーを与えました:
> Counting objects: 144, done. Delta compression using up to 2 threads.
> Compressing objects: 100% (128/128), done. Writing objects: 100%
> (144/144), 50.16 KiB, done. Total 144 (delta 23), reused 0 (delta 0)
>
> -----> Heroku receiving Push
> -----> Ruby/Rails app detected
> -----> Installing dependencies using Bundler version 1.1.rc
> Running: bundle install --without development:test --path vendor/bundle --deployment
> Fetching gem metadata from http://rubygems.org/.......
> Installing rake (0.9.2.2)
> Installing multi_json (1.0.3)
> Installing activesupport (3.1.1)
> Installing builder (3.0.0)
> Installing i18n (0.6.0)
> Installing activemodel (3.1.1)
> Installing erubis (2.7.0)
> Installing rack (1.3.5)
> Installing rack-cache (1.1)
> Installing rack-mount (0.8.3)
> Installing rack-test (0.6.1)
> Installing hike (1.2.1)
> Installing tilt (1.3.3)
> Installing sprockets (2.0.3)
> Installing actionpack (3.1.1)
> Installing mime-types (1.17.2)
> Installing polyglot (0.3.2)
> Installing treetop (1.4.10)
> Installing mail (2.3.0)
> Installing actionmailer (3.1.1)
> Installing arel (2.2.1)
> Installing tzinfo (0.3.30)
> Installing activerecord (3.1.1)
> Installing activeresource (3.1.1)
> Installing coffee-script-source (1.1.2)
> Installing execjs (1.2.9)
> Installing coffee-script (2.2.0)
> Installing rack-ssl (1.3.2)
> Installing json (1.6.1) with native extensions
> Installing rdoc (3.11)
> Installing thor (0.14.6)
> Installing railties (3.1.1)
> Installing coffee-Rails (3.1.1)
> Installing jquery-Rails (1.0.16)
> Installing pg (0.11.0) with native extensions
> Using bundler (1.1.rc)
> Installing Rails (3.1.1)
> Installing sass (3.1.10)
> Installing sass-Rails (3.1.4)
> **Installing sqlite3 (1.3.4) with native extensions Unfortunately, a fatal error has occurred. Please report this error to
> the Bundler issue tracker at
> https://github.com/carlhuda/bundler/issues so that we can fix it.
> Thanks!**
> /usr/local/lib/Ruby/1.9.1/rubygems/installer.rb:483:in `rescue in block in build_extensions': ERROR: Failed to build gem native
> extension. (Gem::Installer::ExtensionBuildError)
> /usr/local/bin/Ruby extconf.rb
> checking for sqlite3.h... no
> sqlite3.h is missing. Try 'port install sqlite3 +universal'
> or 'yum install sqlite3-devel' and check your shared library search path (the
> location where your sqlite3 shared library is located).
> *** extconf.rb failed ***
> Could not create Makefile due to some reason, probably lack of
> necessary libraries and/or headers. Check the mkmf.log file for more
> details. You may need configuration options.
> Provided configuration options:
> --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
> --enable-local
> --disable-local
> Gem files will remain installed in /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/sqlite3-1.3.4
> for inspection.
> Results logged to /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/sqlite3-1.3.4/ext/sqlite3/gem_make.out
> from /usr/local/lib/Ruby/1.9.1/rubygems/installer.rb:486:in `block in build_extensions'
> from /usr/local/lib/Ruby/1.9.1/rubygems/installer.rb:446:in `each'
> from /usr/local/lib/Ruby/1.9.1/rubygems/installer.rb:446:in `build_extensions'
> from /usr/local/lib/Ruby/1.9.1/rubygems/installer.rb:198:in `install'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/source.rb:90:in
> `block in install'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/rubygems_integration.rb:78:in
> `preserve_paths'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/source.rb:89:in
> `install'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/installer.rb:73:in
> `block in install_gem_from_spec'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/rubygems_integration.rb:93:in
> `with_build_args'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/installer.rb:72:in
> `install_gem_from_spec'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/installer.rb:56:in
> `block in run'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/installer.rb:55:in
> `run'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/installer.rb:12:in
> `install'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/cli.rb:219:in
> `install'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/vendor/thor/task.rb:22:in
> `run'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/vendor/thor.rb:263:in
> `dispatch'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/lib/bundler/vendor/thor/base.rb:386:in
> `start'
> from /tmp/build_272b7nu18wwh5/vendor/bundle/Ruby/1.9.1/gems/bundler-1.1.rc/bin/bundle:13:in
> `<top (required)>'
> from vendor/bundle/Ruby/1.9.1/bin/bundle:19:in `load'
> from vendor/bundle/Ruby/1.9.1/bin/bundle:19:in `<main>' ! ! Failed to install gems via Bundler. ! ! Heroku Push rejected,
> failed to compile Ruby/Rails app
>
> To [email protected]:falling-ice-5948.git ! [remote rejected] master ->
> master (pre-receive hook declined) error: failed to Push some refs to
> '[email protected]:falling-ice-5948.git'
[〜#〜] edit [〜#〜]-この投稿は本当に役立つかもしれません: sqlite3-Rubyインストールエラー
これをGemfileに追加します。
group :production do
gem 'pg'
end
group :development, :test do
gem 'sqlite3'
end
次に、bundle
を実行してから、herokuにプッシュします。エラーの原因であるHerokuではsqlite3を使用できません。
Gemfileからsqlite3を削除した後(または開発専用にした後)にまだ問題が発生する場合は、Gitに依存しているため、Herokuの観点からファイルを再更新していないことです。
非常に単純に:
git add Gemfile
git commit -m "Removed sqlite3 from Gemfile"
git Push heroku master
実際にHerokuにコミットしていなかったため、変更が「行われていない」ことに気付く前に、しばらく頭をぶつけました。
これは、多数のフォーラムで規定されているすべての修正を試した1日後に、私にとってうまくいったことです。まず、Railsチュートリアルブックまたはオンラインを使用している場合は、2番目のバージョンに移行する必要があります(オンラインのベータ版は http://Ruby.railstutorial)にあります。 org / )。
エディタを開き、Gemfileに行を追加します。
group :production do
gem 'pg', '0.12.2'
end
group :development do
gem 'sqlite3', '1.3.4'
end
次に、編集した新しいGemfileをHerokuにコミットして、次の手順を実行する必要があります。
git add Gemfile
git commit -m "Put Sqlite3 into development in the Gemfile"
git Push heroku master
Tibbonとanimusonの指示(私に起こった)を適用してもまだ機能しない場合は、Gemfileの「gem'sqlite3 '」行からコメントを削除してから、もう一度add-commit-Pushを実行してください。
この問題を解決するために使用できる構文は少し異なります。
gem 'pg', group: :production
gem 'sqlite3', group: :development
以下への参照がある場合:
# Use sqlite3 as the database for Active Record gem 'sqlite3'
gemfileで、これをコメントアウトするか、上記のコードに置き換えてください。それ以外の場合、これが残っていると、同じエラーが発生します。
私はこれらの指示に従いましたが、私の場合、更新されたGemfile.lockファイルをバージョン管理に追加する必要がありました。そこで、「all」にフラグ-aを使用して、GemfileファイルとGemfile.lockファイルの両方を追加しました。
git commit -am "Sqlite3をGemfileの開発に投入し、更新されたGemfile.lockを追加しました"
git Pushherokuマスター