Я знаю, что этот вопрос задавался несколько раз на этом сайте, но, перебирая другие ответы, я все еще не знаю, как решить эту проблему.
Я только что извлек копию приложения rails с рабочего сервера и получаю следующую ошибку:
Missing the Rails 2.3.4 драгоценный камень. пожалуйста
gem install -v=2.3.4 rails
, обновление
ваша настройка RAILS_GEM_VERSION в
config / environment.rb для Rails
версия, которую вы установили, или
закомментируйте RAILS_GEM_VERSION для использования
установлена последняя версия.
рельсы 2.3.4 в моем списке драгоценных камней:
*** LOCAL GEMS ***
actionmailer (2.3.8, 2.3.5, 2.3.4, 2.2.2, 1.3.6)
actionpack (2.3.8, 2.3.5, 2.3.4, 2.2.2, 1.13.6)
actionwebservice (1.2.6)
activerecord (2.3.8, 2.3.5, 2.3.4, 2.2.2, 1.15.6)
activeresource (2.3.8, 2.3.5, 2.3.4, 2.2.2)
activesupport (2.3.8, 2.3.5, 2.3.4, 2.2.2, 1.4.4)
acts_as_ferret (0.4.3)
authlogic (2.1.6)
capistrano (2.5.2)
cgi_multipart_eof_fix (2.5.0)
daemons (1.0.10)
dnssd (0.6.0)
fastercsv (1.5.4)
fastthread (1.0.1)
fcgi (0.8.7)
ferret (0.11.6)
gem_plugin (0.2.3)
gemcutter (0.6.1)
google-spreadsheet-ruby (0.1.2)
highline (1.5.0)
hpricot (0.6.164)
libxml-ruby (1.1.2)
mongrel (1.1.5)
mysql (2.8.1)
needle (1.3.0)
net-scp (1.0.1)
net-sftp (2.0.1, 1.1.1)
net-ssh (2.0.4, 1.1.4)
net-ssh-gateway (1.0.0)
nokogiri (1.4.4)
oauth (0.4.4)
packet (0.1.15)
prawn (0.8.4)
prawn-core (0.8.4)
prawn-fast-png (0.2.3)
prawn-layout (0.8.4)
prawn-security (0.8.4)
rack (1.2.1, 1.1.0, 1.0.1)
rails (2.3.8, 2.3.5, 2.3.4, 2.2.2, 1.2.6)
rake (0.8.3)
RedCloth (4.1.1)
rmagick (2.13.1)
roo (1.9.3)
ruby-ole (1.2.11.1)
ruby-openid (2.1.2)
ruby-yadis (0.3.4)
rubynode (0.1.5)
rubyzip (0.9.4)
spreadsheet (0.6.5.0)
sqlite3-ruby (1.2.4)
termios (0.9.4)
xmpp4r (0.4)
И gem list -d rails
выглядит так:
*** LOCAL GEMS ***
rails (2.3.8, 2.3.5, 2.3.4, 2.2.2, 1.2.6)
Author: David Heinemeier Hansson
Rubyforge: http://rubyforge.org/projects/rails
Homepage: http://www.rubyonrails.org
Installed at (2.3.8): /Library/Ruby/Gems/1.8
(2.3.5): /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
(2.3.4): /Library/Ruby/Gems/1.8
(2.2.2): /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
(1.2.6): /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
Web-application framework with template engine, control-flow layer,
and ORM.
Теперь вот где я потерялся: в environment.rb
у меня есть эта строка для выбора рельсов 2.3.4.
RAILS_GEM_VERSION = '2.3.4' unless defined? RAILS_GEM_VERSION
Если я изменю эту строку на:
RAILS_GEM_VERSION = '2.3.8' unless defined? RAILS_GEM_VERSION
Ошибка исчезает. Я знаю, что есть версии рельсов, установленных в разных местах, но две рассматриваемые версии установлены в одном месте. Почему 2.3.8 не вызывает ошибку, а 2.3.4 - нет?
Как я могу решить эту проблему?
ПРИМЕЧАНИЕ: я работаю на Пассажире
ТАКЖЕ ВНИМАНИЕ: скрипт / консоль работает под 2.3.4 ... но приложение все еще не работает в веб-браузере.
UPDATE
Хорошо, поэтому я проверил директиву PassengerRuby
в httpd.conf
, и она была /usr/local/bin/ruby
, тогда как which ruby
выдала /usr/bin/ruby
. Я изменил директиву на /usr/bin/ruby
.
Это решило проблему с веб-браузером, однако теперь скрипт / консоль не работает с той же ошибкой:
Missing the Rails 2.3.4 gem. пожалуйста
gem install -v=2.3.4 rails
, обновление
ваша настройка RAILS_GEM_VERSION в
config / environment.rb для Rails
версия, которую вы установили, или
закомментируйте RAILS_GEM_VERSION для использования
установлена последняя версия.
Так что теперь я могу нормально просматривать проект в веб-браузере. Но я не могу использовать скрипты rails, и rake db:migrate
завершается с ошибкой:
/ System / Library / Frameworks / Ruby.framework / Версии / 1,8 / USR / Lib / рубин / 1,8 / rubygems.rb: 827: в
report_activate_error': Could not
find RubyGem rake (>= 0)
(Gem::LoadError) from
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:261:in
активировать 'из
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:68:in `gem 'из / usr / bin / rake: 18