No such file to load only in ruby 1.9.2

I am making a gem and i have three files:

gem_name.rb
gem_name/
    version.rb
    server.rb

in gem_name.rb it requires the other two files but for some reason on
ruby 1.9.2 i can't find server but on 1.8.7 it can. I am using rvm and
had a previously installed gem of the same name from when i was testing
things so i thought that might be the problem so i reinstalled ruby
1.9.2 on rvm but the problem still persists.

Any help would be much appreciated.

Thanks, James.

···

--
Posted via http://www.ruby-forum.com/.

Did you try
require_relative 'server'

or alternatively

require './server'

yet?

···

On Sat, May 14, 2011 at 12:24 AM, james b. <jamesbirtles@btinternet.com> wrote:

I am making a gem and i have three files:

gem_name.rb
gem_name/
version.rb
server.rb

in gem_name.rb it requires the other two files but for some reason on
ruby 1.9.2 i can't find server but on 1.8.7 it can. I am using rvm and
had a previously installed gem of the same name from when i was testing
things so i thought that might be the problem so i reinstalled ruby
1.9.2 on rvm but the problem still persists.

Any help would be much appreciated.

--
Phillip Gawlowski

Though the folk I have met,
(Ah, how soon!) they forget
When I've moved on to some other place,
There may be one or two,
When I've played and passed through,
Who'll remember my song or my face.

Put everything in 'lib'. Put the tests (that you need to write) in 'test'.

lib/gem_name.rb should require like so:

require "gem_name/server"

when you run your tests (preferably via rake) make sure that "lib" is in your load path.

ruby -Ilib test/gem_name/test_server.rb

and when you package this up as a gem, the "lib" dir should be in your gemspec's lib path.

···

On May 13, 2011, at 15:24 , james b. wrote:

I am making a gem and i have three files:

gem_name.rb
gem_name/
   version.rb
   server.rb

in gem_name.rb it requires the other two files but for some reason on
ruby 1.9.2 i can't find server but on 1.8.7 it can. I am using rvm and
had a previously installed gem of the same name from when i was testing
things so i thought that might be the problem so i reinstalled ruby
1.9.2 on rvm but the problem still persists.

Thanks for the replies

I am currently using
require "gem_name/server"

I tried the other two suggestions but still no success

gem_name.rb is in the lib directory already and i'm not (gasp) using any
tests. The problem occurs when i install the gem using rake install
provided to me by bundler. I hope that it will work if you install it
through rubygems but i somehow doubt that.

I know i really should have tests so i guess now is as good a time as
ever to start so if you can suggest a test framework to use that would
be great.

Thanks

···

--
Posted via http://www.ruby-forum.com/.

Thanks for the replies

I am currently using
require "gem_name/server"

I tried the other two suggestions but still no success

The last part you need to know is that 1.9 dropped '.' from the default load path. that's why I say put it in lib and make sure lib is in your path on BOTH 1.8 and 1.9.

gem_name.rb is in the lib directory already and i'm not (gasp) using any
tests. The problem occurs when i install the gem using rake install
provided to me by bundler. I hope that it will work if you install it
through rubygems but i somehow doubt that.

I know i really should have tests so i guess now is as good a time as
ever to start so if you can suggest a test framework to use that would
be great.

I use minitest for nearly everything. Ships with 1.9. I use Hoe with my projects so it's all integrated and happy.

···

On May 13, 2011, at 16:50 , james b. wrote: