Skip to content

Conversation

@chadlwilson
Copy link
Contributor

@chadlwilson chadlwilson commented Feb 3, 2026

Works around jbundler/maven-tools > virtus > axiom-types lack of Ruby 3.4 compatibility

Without this, the normal tests work, however the integration tests fail before being invoked during Execution default-package of goal org.jruby.maven:gem-maven-plugin:3.0.6:package which seem to rely on maven-tools to parse the integration test POM before using maven-invoker-plugin to invoke it. Seemed the best place to declare the dependency was here, since this is where jbundler and implicitly maven-tools are defined, although declaring it in the Mavenfile also seems to work.

LoadError: cannot load such file -- bigdecimal
  require at org/jruby/RubyKernel.java:1193
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:139
   <main> at /Users/chad/.m2/repository/org/jruby/maven/ruby-tools/3.0.6/ruby-tools-3.0.6.jar!/axiom/types.rb:3
  require at org/jruby/RubyKernel.java:1193
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:139
   <main> at /Users/chad/.m2/repository/org/jruby/maven/ruby-tools/3.0.6/ruby-tools-3.0.6.jar!/axiom-types.rb:3
  require at org/jruby/RubyKernel.java:1193
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:139
   <main> at /Users/chad/.m2/repository/org/jruby/maven/ruby-tools/3.0.6/ruby-tools-3.0.6.jar!/virtus.rb:245
  require at org/jruby/RubyKernel.java:1193
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:139
   <main> at /Users/chad/.m2/repository/org/jruby/maven/ruby-tools/3.0.6/ruby-tools-3.0.6.jar!/maven/tools/model.rb:1
  require at org/jruby/RubyKernel.java:1193
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:139
   <main> at /Users/chad/.m2/repository/org/jruby/maven/ruby-tools/3.0.6/ruby-tools-3.0.6.jar!/maven/tools/pom.rb:22
  require at org/jruby/RubyKernel.java:1193
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:139
   <main> at -e:1

…ack of Ruby 3.4 compatibility

Wihout this, the normal tests work, however the integration tests fail before being invoked during `Execution default-package of goal org.jruby.maven:gem-maven-plugin:3.0.6:package` which seem to rely on maven-tools to parse the integration test POM before invoking it. Seemed the best place to declare the dependency was here, since this is where jbundler and implicitly maven-tools are defined, although declaring it in the Mavenfile also seems to work.

LoadError: cannot load such file -- bigdecimal
  require at org/jruby/RubyKernel.java:1193
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:139
   <main> at /Users/chad/.m2/repository/org/jruby/maven/ruby-tools/3.0.6/ruby-tools-3.0.6.jar!/axiom/types.rb:3
  require at org/jruby/RubyKernel.java:1193
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:139
   <main> at /Users/chad/.m2/repository/org/jruby/maven/ruby-tools/3.0.6/ruby-tools-3.0.6.jar!/axiom-types.rb:3
  require at org/jruby/RubyKernel.java:1193
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:139
   <main> at /Users/chad/.m2/repository/org/jruby/maven/ruby-tools/3.0.6/ruby-tools-3.0.6.jar!/virtus.rb:245
  require at org/jruby/RubyKernel.java:1193
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:139
   <main> at /Users/chad/.m2/repository/org/jruby/maven/ruby-tools/3.0.6/ruby-tools-3.0.6.jar!/maven/tools/model.rb:1
  require at org/jruby/RubyKernel.java:1193
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:139
   <main> at /Users/chad/.m2/repository/org/jruby/maven/ruby-tools/3.0.6/ruby-tools-3.0.6.jar!/maven/tools/pom.rb:22
  require at org/jruby/RubyKernel.java:1193
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:139
   <main> at -e:1
@chadlwilson chadlwilson changed the title build(deps): workaround jbundler/maven-tools > virtus > axiom-types lack of Ruby 3.4 compatibility build(deps): fix build/tests on JRuby 10.0.3.0 Feb 3, 2026
@chadlwilson chadlwilson merged commit 9e823ed into jruby:master Feb 3, 2026
10 checks passed
@chadlwilson chadlwilson deleted the fix-build-on-jruby-10-0-3 branch February 3, 2026 17:45
chadlwilson added a commit to chadlwilson/maven-tools that referenced this pull request Feb 4, 2026
Added bigdecimal as a runtime dependency due to virtus EOL, and transitive dependency requirement.

See jruby/warbler#607 for addition info.
chadlwilson added a commit to chadlwilson/maven-tools that referenced this pull request Feb 4, 2026
Added bigdecimal as a runtime dependency due to virtus EOL, and transitive dependency requirement.

See jruby/warbler#607 for addition info.
chadlwilson added a commit to chadlwilson/maven-tools that referenced this pull request Feb 4, 2026
Added bigdecimal and ostruct as runtime dependencies due to virtus EOL, and transitive dependency requirement.

See jruby/warbler#607 for additional info.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant