jruby-maven-plugins
jruby-maven-plugins copied to clipboard
Marshal data too short accessing mavengems
This seems to be a recent issue, possibly related to some unknown update to rubygems.org:
[INFO] --- maven-jar-plugin:3.0.0:jar (default-jar) @ jruby-stdlib ---
[INFO] Building jar: /Users/headius/projects/jruby/lib/target/jruby-stdlib-9.2.13.0-SNAPSHOT.jar
[INFO]
[INFO] -----------------------< org.jruby:jruby-tests >------------------------
[INFO] Building JRuby Integration Tests 9.2.13.0-SNAPSHOT [4/4]
[INFO] --------------------------------[ jar ]---------------------------------
Downloading from mavengems: mavengem:http://rubygems.org/rubygems/rspec/3.9.0/rspec-3.9.0.pom
ArgumentError: marshal data too short
load at org/jruby/RubyMarshal.java:147
marshal_load at uri:classloader:/nexus/rubygems_helper.rb:58
initialize at uri:classloader:/nexus/dependency_data_impl.rb:33
Downloading from central: https://repo.maven.apache.org/maven2/rubygems/rspec/3.9.0/rspec-3.9.0.pom
This happens during JRuby's build using mvn package -Pbootstrap which downloads and installs additional gems for local development purposes.
The URL in question is clearly not something that rubygems.org supports, and produces a page with the only content as "404 Not Found" when accessed.
Perhaps this page's content is being used as the pom? Or used as some RubyGems data that it tries to marshal and fails?
This is preventing all JRuby CI builds from working. I wiped out my local .m2/repository and could reproduce locally as well.
cc @mkristian
I am trying to investigate myself but I could use some help.
I have patched around it by not using plugins to install rspec in the JRuby /test build for now.
cc @abelsromero This is the issue I mentioned on JRuby Matrix.
Could not reproduce with clean .m2/repository. I cloned the jruby repo, run ./mvnw package -Pbootstrap and mvn package -Pbootstrap.
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /home/---/.sdkman/candidates/maven/current
Java version: 11.0.7, vendor: AdoptOpenJDK, runtime: /home/---/.sdkman/candidates/java/11.0.7.hs-adpt
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "5.6.16-1-manjaro", arch: "amd64", family: "unix"
I patched around it so you may have to go back a few revisions.
I fear I am missing something, I did not run the jruby build against the snapshot of the plugin. Just run as-is from the repo and no error occured. a) I am missing something b) I got a false positive c) You mean you patched on the jruby side?
This seems fixed in recent versions, I would close it for now!