2010-07-08 81 views
1

這裏是堆棧跟蹤我在控制檯中看到:RadRails的開發服務器啓動錯誤:load_missing_constant

C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:443:in `load_missing_constant': uninitialized constant ActiveRecord (NameError) 
    from C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:80:in `const_missing' 
    from C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:92:in `const_missing' 
    from C:/Users/rrevi/Documents/Aptana Studio/developer_portal/config/environment.rb:42 
    from C:/ruby/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/initializer.rb:111:in `run' 
    from C:/Users/rrevi/Documents/Aptana Studio/developer_portal/config/environment.rb:9 
    from C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
    from C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' 
    from C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:156:in `require' 
    from C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:521:in `new_constants_in' 
    from C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:156:in `require' 
    from C:/ruby/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/commands/server.rb:84 
    from C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
    from C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' 
    from ./script/server:3 
    from -e:2:in `load' 
    from -e:2 

這之前的罰款。我沒有做出env的改變(我記得)。很奇怪。我在Windows Vista機器上運行RadRails。

回答

0

你正在運行相當過時的rails版本,它說你缺少ActiveRecord寶石。

+0

我不知道我是否可以通過aptana radrails更新我的紅寶石?如果我可以,它會更新我的寶石(並希望讓我神祕消失的ActiveRecord寶石)? – Rafael 2010-07-08 19:11:49

+0

不知道,但我強烈建議不要通過ide更新寶石。我還沒有看到一個非常擅長管理寶石的ide。命令提示符是你最好的選擇。 – Eimantas 2010-07-09 03:48:24

0

如果你得到的錯誤:

helloworld.rb:3:in `<main>': uninitialized constant ActiveRecord (NameError) 

那麼就意味着你還沒有安裝ActiveRecord的紅寶石寶石。您需要安裝寶石,以便Aptana可以找到它,所以您需要了解以下程序:

  1. 列出可遠程安裝的寶石。
  2. 搜索可遠程安裝的寶石。
  3. 安裝遠程寶石。
  4. 驗證您的寶石已安裝。

閱讀這一切:http://docs.rubygems.org/read/chapter/2

爲了糾正上述錯誤,這裏是你必須做的:

打開命令提示符窗口,並在終端中運行以下命令:

#Find out what gems are installed on your computer: 
gem query --local 

#Take a look at the ActiveRecord gem, see if it is available. 
gem query --remote --name-matches activerecord 

#Get more info about the gem on the remote server. 
gem specification --remote activerecord 

#Install your gem: 
gem install --remote activerecord 

#See if it installed successfully and is in the installed gem list: 
gem query --local 

重新啓動您的IDE。集錦需要被告知使用你的ActiveRecord的寶石:

require 'active_record'; 

下面是一個使用ActiveRecord的寶石,看集錦可以找到你的ActiveRecord的寶石一些代碼:

#Ruby code 
require 'active_record' 
class Dog < ActiveRecord::Base 
    has_many :dog_tags 
end 
puts "activerecord gem is installed"; 

這不會產生錯誤,並且打印「activerecord gem is installed」;