Thanks to visit codestin.com
Credit goes to github.com

Skip to content

can't require compiled class in 1.7.dev #158

@bporterfield

Description

@bporterfield

Discovered when trying to use warbler with the 'compiled' flag. Warbler creates stub .rb files for each compiled class, with: require __FILE__.sub(/.rb$/, '.class')

Simple test:

a.rb:

puts 'hi'

jruby 1.6.7

bporterfield@ ~/dev$ ruby -e 'require "a"'
hi
bporterfield@ ~/dev$ jrubyc a.rb
bporterfield@ ~/dev$ echo "require __FILE__.sub(/.rb$/, '.class')" > a.rb
bporterfield@ ~/dev$ ruby -e 'require "a"
hi

and in jruby 1.7:

bporterfield@ ~/dev$ ruby -e 'require "a"'
hi
bporterfield@ ~/dev$ jrubyc a.rb
bporterfield@ ~/dev$ echo "require __FILE__.sub(/.rb$/, '.class')" > a.rb
bporterfield@ ~/dev$ ruby -e 'require "a"'
LoadError: no such file to load -- /Users/bporterfield/dev/a.class
  require at org/jruby/RubyKernel.java:991
  require at /Users/bporterfield/.rvm/rubies/jruby-head/lib/ruby/shared/rubygems/custom_require.rb:36
   (root) at /Users/bporterfield/dev/a.rb:1
  require at org/jruby/RubyKernel.java:991
   (root) at /Users/bporterfield/.rvm/rubies/jruby-head/lib/ruby/shared/rubygems/custom_require.rb:1
   (root) at -e:1

Using load instead of require seems to work. Is this expected?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions