From: Stefan Lang Date: 2009-01-31T03:22:54+09:00 Subject: Re: uninitialized constant error 2009/1/30 Zhao Yi : > I have three ruby classes, see below: > > 1. base_cls.rb > > File.dirname(__FILE__)+'/cls_factory' > class BaseCls > > def self.say > ClsFactory.say > end > end > BaseCls.say > > 2. sub_cls.rb > > require File.dirname(__FILE__)+'/base_cls' > > class SubCls < BaseCls > end > > 3. cls_factory.rb > > require File.dirname(__FILE__)+'/sub_cls' > > class ClsFactory > def self.get_cls > SubCls.new > end > end > > When I run base_cls.rb, I got this error: > > base_cls.rb:5:in `say': uninitialized constant BaseCls::ClsFactory > (NameError) > > I don't understand why this error happens? Can anyone help me on this? Maybe you meant to prefix the first line in base_cls.rb with "require"? Stefan