Skip to content

jRuby 9.4 fails to load Celluloid gem #7556

@rykov

Description

@rykov

Environment Information

  • jruby 9.4.0.0 (3.1.0) 2022-11-23 95c0ec1 OpenJDK 64-Bit Server VM 11.0.17+0 on 11.0.17+0 +jit [arm64-darwin]
  • Darwin Kernel Version 22.2.0: Fri Nov 11 02:03:51 PST 2022; root:xnu-8792.61.2~4/RELEASE_ARM64_T6000 arm64

Other relevant info you may wish to add:

  • celluloid gem v0.18.0

Expected Behavior

  • jRuby 9.3.9.0 successfully loads Celluloid without errors:
$ jruby -v
jruby 9.3.9.0 (2.6.8) 2022-10-24 537cd1f8bc OpenJDK 64-Bit Server VM 11.0.17+0 on 11.0.17+0 +jit [arm64-darwin]
$ gem install celluloid -v 0.18.0
Successfully installed celluloid-0.18.0
...
$ jruby -e "require 'celluloid'; puts 'ok'"
ok

Actual Behavior

  • jRuby 9.4.0.0 throws java.lang.ClassCastException exception:
$ jruby -v
jruby 9.4.0.0 (3.1.0) 2022-11-23 95c0ec159f OpenJDK 64-Bit Server VM 11.0.17+0 on 11.0.17+0 +jit [arm64-darwin]
$ gem install celluloid -v0.18.0
...
$ jruby -e "require 'celluloid'; puts 'ok'"
LoadError: load error: celluloid/internals/task_set -- java.lang.ClassCastException: class org.jruby.internal.runtime.methods.SynchronizedDynamicMethod cannot be cast to class org.jruby.internal.runtime.methods.IRMethodArgs (org.jruby.internal.runtime.methods.SynchronizedDynamicMethod and org.jruby.internal.runtime.methods.IRMethodArgs are in unnamed module of loader 'bootstrap')
  require at org/jruby/RubyKernel.java:1057
  require at .../jruby-9.4.0.0/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:160
   <main> at .../jruby-9.4.0.0/lib/ruby/gems/shared/gems/celluloid-0.18.0/lib/celluloid.rb:513
  require at org/jruby/RubyKernel.java:1057
  require at .../jruby-9.4.0.0/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:160
   <main> at -e:1
... 7 levels...

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions