Requiring multiple files

Hi all!
I was wonder how one goes about requireing multiple files.
I have the follow file structure:
Project/
   run.rb
   sub/
     go.rb
     require_me.rb

now in run.rb
  require 'sub/go'
in go.rb
  require 'require_me'

but when i execute run.rb, it says it can't find require_me.rb

what are the best ways to set up files and include then in ruby?

thankx!

run.rb is a directory higher than require_me.rb, so you're require line would be

require 'sub/require_me.rb'

This is also true for some of the standard library stuff. For
instance if you wanted the ftp library

require 'net/ftp'

Hope that helps,
    Kyle

rNuby wrote:

Hi all!
I was wonder how one goes about requireing multiple files.
I have the follow file structure:
Project/
   run.rb
   sub/
     go.rb
     require_me.rb

now in run.rb
  require 'sub/go'
in go.rb
  require 'require_me'

but when i execute run.rb, it says it can't find require_me.rb

try:

require 'sub/require_me'

what are the best ways to set up files and include then in ruby?

I usually do something like this:

$app_dir = File.expand_path(File.join(File.dirname(__FILE__), '..'))
$:.unshift($app_dir)

Assuming a layout like this:

bin/
   launcher (<- here's where the above goes)
lib/
   a.rb
   b.rb

That way I know I can consistently use:

require 'lib/b'

from anywhere in the app.

···

--
Alex

To clarify on Alex's response, I think that this has something to do with
the load path. If it's being set to the Project directory, then trying to
require 'require_me' in go.rb won't work, even though the files are sitting
in the same directory. If your load path only points to the Project
directory, it doesn't find require_me in there and bombs.
Chris

···

On 7/25/07, rNuby <terry.dellino@gmail.com> wrote:

Hi all!
I was wonder how one goes about requireing multiple files.
I have the follow file structure:
Project/
   run.rb
   sub/
     go.rb
     require_me.rb

now in run.rb
  require 'sub/go'
in go.rb
  require 'require_me'

but when i execute run.rb, it says it can't find require_me.rb

what are the best ways to set up files and include then in ruby?

thankx!