2011-11-20 89 views
0

我在安裝ubuntu 11.04時遇到了一個問題,不知道是什麼問題......我只是在生產環境中安裝了rails和passenger以及rvm確定,但由於某種原因,我不斷收到缺少Rails 2.3.11寶石。請`gem install -v = 2.3.11 rails`,

Missing the Rails 2.3.11 gem. Please `gem install -v=2.3.11 rails`, 

這裏是link

當我的應用程序,我做

gem list 

*** LOCAL GEMS *** 

actionmailer (2.3.11) 
actionpack (2.3.11) 
activerecord (2.3.11) 
activeresource (2.3.11) 
activesupport (2.3.11) 
bundler (1.0.21) 
rack (1.1.2) 
rails (2.3.11) 
rake (0.9.2.2) 

所以它沒有任何意義到底是怎麼回事,爲什麼它告訴我這一點我沒有安裝護欄......在什麼IM任何想法做錯了

這裏是我的RVM信息

rvm list 

rvm rubies 

gem install -v=2.3.11 rails 
Fetching: rake-0.9.2.2.gem (100%) 
Fetching: activesupport-2.3.11.gem (100%) 
Fetching: activerecord-2.3.11.gem (100%) 
Fetching: rack-1.1.2.gem (100%) 
Fetching: actionpack-2.3.11.gem (100%) 
Fetching: actionmailer-2.3.11.gem (100%) 
Fetching: activeresource-2.3.11.gem (100%) 
Fetching: rails-2.3.11.gem (100%) 
Successfully installed rake-0.9.2.2 
Successfully installed activesupport-2.3.11 
Successfully installed activerecord-2.3.11 
Successfully installed rack-1.1.2 
Successfully installed actionpack-2.3.11 
Successfully installed actionmailer-2.3.11 
Successfully installed activeresource-2.3.11 
Successfully installed rails-2.3.11 
8 gems installed 
Installing ri documentation for rake-0.9.2.2... 



=> ruby-1.8.7-p334 [ x86_64 ] 
    ruby-1.9.2-p290 [ x86_64 ] 


rvm gemset list 

gemsets for ruby-1.8.7-p334 (found in /home/ubuntu/.rvm/gems/ruby-1.8.7-p334) 
    global 
=> ticket_mule 

UPDATE的environment.rb

RAILS_GEM_VERSION = '2.3.11' unless defined? RAILS_GEM_VERSION 


Rails::Initializer.run do |config| 


    # Specify gems that this application depends on and have them installed with rake gems:install 
    # config.gem "bj" 
    # config.gem "hpricot", :version => '0.6', :source => "http://code.whytheluckystiff.net" 
    # config.gem "sqlite3-ruby", :lib => "sqlite3" 
    # config.gem "aws-s3", :lib => "aws/s3" 
    config.gem 'will_paginate' 
    config.gem 'authlogic' 
    config.gem 'searchlogic' 
    config.gem 'paperclip' 
    config.gem 'prawn' 
    config.gem 'populator' 
    config.gem 'faker' 
+0

它可能是2.3.11安裝對1.8.7,你實際上使用1.9.2沒有寶石或類似的東西。 –

+0

沒有gemfile ....因爲這是一箇舊的rails應用程序 – Trace

+0

哪個gemset你想要 – Trace

回答

1

這可能是您的乘客根本沒有使用RVM環境。對於工作開箱即用,你需要

  • 已經下ubuntu用戶運行你的應用程序(它默認不這樣做,它默認使用的網絡服務器用戶www-data),並設置適當的默認設置,從而確定正確的紅寶石和寶石是使用RVM,還是爲RVM設置了完全乘客集成。有關更多信息,請參閱http://beginrescueend.com/integration/passenger/

請注意,乘客一次只能使用一顆紅寶石。儘管您可以在單個乘客實例中使用不同的gemsets(例如多個應用程序),但您無法在紅寶石之間切換。

+0

我該如何做到這一點有你的應用程序運行在Ubuntu用戶下(它不會默認執行,它使用Web服務器用戶www默認情況下爲-data)並設置正確的默認值,以便使用正確的ruby和gemset RVM – Trace

+0

Passenger具有稱爲[用戶切換](http://modrails.com/documentation/Users%20guide%20Apache.html#user_switching)的功能(看那邊)。您還需要配置乘客使用'PassengerRuby'和朋友使用您的rvm紅寶石。如果您使用您選擇的紅寶石安裝乘客,則'passenger-install-apache2'腳本將輸出正確的配置以供使用。 –