问题是我无法在 Heroku 中部署我的项目,因为它要求卸载 gem 等。
我按照以下链接在 Rails 上安装了 ruby:http ://railsinstaller.org/
$ruby -v
ruby 1.9.3p429 (2013-05-15) [i386-mingw32]
$gem -v
2.0.3
$rails -v
`C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:296:in
uld not find 'railties' (>= 0) among 12 total gem(s) (Gem::LoadErr
from C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/dependen
to_spec'
from C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/core_ext
:47:in `gem'
from C:/RailsInstaller/Ruby1.9.3/bin/rails:22:in `<main>'`
我不知道为什么Rails 昨天正确显示版本时会变成这样。
然后我使用了 Aptana Studio 3 中的部署向导,它显示了这个结果
$ git push heroku master
Counting objects: 69, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (58/58), done.
Writing objects: 100% (69/69), 35.36 KiB, done.
Total 69 (delta 2), reused 0 (delta 0)
-----> Ruby/Rails app detected
-----> Using Ruby version: ruby-2.0.0
-----> Installing dependencies using Bundler version 1.3.2
Running: bundle install --without development:test --path vendor/bundle -
-binstubs vendor/bundle/bin
Fetching gem metadata from https://rubygems.org/...........
Fetching gem metadata from https://rubygems.org/..
Resolving dependencies...
Installing rake (10.1.0)
Installing i18n (0.6.1)
Installing multi_json (1.7.7)
Installing activesupport (3.2.13)
Installing builder (3.0.4)
Installing activemodel (3.2.13)
Installing erubis (2.7.0)
Installing journey (1.0.4)
Installing rack (1.4.5)
Installing rack-cache (1.2)
Installing rack-test (0.6.2)
Installing hike (1.2.3)
Installing tilt (1.4.1)
Installing sprockets (2.2.2)
Installing actionpack (3.2.13)
Installing mime-types (1.23)
Installing polyglot (0.3.3)
Installing treetop (1.4.14)
Installing mail (2.5.4)
Installing actionmailer (3.2.13)
Installing arel (3.0.2)
Installing tzinfo (0.3.37)
Installing activerecord (3.2.13)
Installing activeresource (3.2.13)
Using bundler (1.3.2)
Installing coffee-script-source (1.6.3)
Installing execjs (1.4.0)
Installing coffee-script (2.2.0)
Installing rack-ssl (1.3.3)
Installing json (1.8.0)
Installing rdoc (3.12.2)
Installing thor (0.18.1)
Installing railties (3.2.13)
Installing coffee-rails (3.2.2)
Installing jquery-rails (3.0.4)
Installing rails (3.2.13)
Installing sass (3.2.9)
Installing sass-rails (3.2.6)
Installing sqlite3 (1.3.7)
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native ex
tension.
/tmp/build_3o7mrj90l1v27/vendor/ruby-2.0.0/bin/ruby extconf.rb
checking for sqlite3.h... no
sqlite3.h is missing. Try 'port install sqlite3 +universal'
or 'yum install sqlite-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=/tmp/build_3o7mrj90l1v27/vendor/ruby-2.0.0/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}/
--enable-local
--disable-local
Gem files will remain installed in /tmp/build_3o7mrj90l1v27/vendor/bundle
/ruby/2.0.0/gems/sqlite3-1.3.7 for inspection.
Results logged to /tmp/build_3o7mrj90l1v27/vendor/bundle/ruby/2.0.0/gems/
sqlite3-1.3.7/ext/sqlite3/gem_make.out
An error occurred while installing sqlite3 (1.3.7), and Bundler cannot co
ntinue.
Make sure that `gem install sqlite3 -v '1.3.7'` succeeds before bundling.
Bundler Output: Fetching gem metadata from https://rubygems.org/.........
..
Fetching gem metadata from https://rubygems.org/..
Resolving dependencies...
Installing rake (10.1.0)
Installing i18n (0.6.1)
Installing multi_json (1.7.7)
Installing activesupport (3.2.13)
Installing builder (3.0.4)
Installing activemodel (3.2.13)
Installing erubis (2.7.0)
Installing journey (1.0.4)
Installing rack (1.4.5)
Installing rack-cache (1.2)
Installing rack-test (0.6.2)
Installing hike (1.2.3)
Installing tilt (1.4.1)
Installing sprockets (2.2.2)
Installing actionpack (3.2.13)
Installing mime-types (1.23)
Installing polyglot (0.3.3)
Installing treetop (1.4.14)
Installing mail (2.5.4)
Installing actionmailer (3.2.13)
Installing arel (3.0.2)
Installing tzinfo (0.3.37)
Installing activerecord (3.2.13)
Installing activeresource (3.2.13)
Using bundler (1.3.2)
Installing coffee-script-source (1.6.3)
Installing execjs (1.4.0)
Installing coffee-script (2.2.0)
Installing rack-ssl (1.3.3)
Installing json (1.8.0)
Installing rdoc (3.12.2)
Installing thor (0.18.1)
Installing railties (3.2.13)
Installing coffee-rails (3.2.2)
Installing jquery-rails (3.0.4)
Installing rails (3.2.13)
Installing sass (3.2.9)
Installing sass-rails (3.2.6)
Installing sqlite3 (1.3.7)
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native ex
tension.
/tmp/build_3o7mrj90l1v27/vendor/ruby-2.0.0/bin/ruby extconf.rb
checking for sqlite3.h... no
sqlite3.h is missing. Try 'port install sqlite3 +universal'
or 'yum install sqlite-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=/tmp/build_3o7mrj90l1v27/vendor/ruby-2.0.0/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}/
--enable-local
--disable-local
这是最后的错误
Gem files will remain installed in /tmp/build_3o7mrj90l1v27/vendor/bundle
/ruby/2.0.0/gems/sqlite3-1.3.7 for inspection.
Results logged to /tmp/build_3o7mrj90l1v27/vendor/bundle/ruby/2.0.0/gems/
sqlite3-1.3.7/ext/sqlite3/gem_make.out
An error occurred while installing sqlite3 (1.3.7), and Bundler cannot co
ntinue.
Make sure that `gem install sqlite3 -v '1.3.7'` succeeds before bundling.
!
! Failed to install gems via Bundler.
!
! Detected sqlite3 gem which is not supported on Heroku.
! https://devcenter.heroku.com/articles/sqlite3
!
! Push rejected, failed to compile Ruby/Rails app
我也试过这个:
$ gem install sqlite3 -- --with-sqlite3-dir=/c/RailsInstaller/Ruby1.9.3/bin/sql
ite3
Successfully installed sqlite3-1.3.7-x86-mingw32
1 gem installed
和这个:
$ gem install bundler
Fetching: bundler-1.3.5.gem (100%)
Successfully installed bundler-1.3.5
Installing ri documentation for bundler-1.3.5
1 gem installed
但我仍然得到同样的错误。我做错了什么?
我是 Ruby 和 Rails 的新手,这是我第一次将应用程序部署到 heroku
谢谢,