Jruby 1.7 and 9.0 fail

No changes made in the config, but it’s a couple of weeks that the jruby 1.7 and 9.0 builds fail with an installation error.

Example of failed build here

Here is the relevant log:

curl: (22) The requested URL returned error: 404 Not Found
Required jruby-1.7 is not installed - installing.
curl: (22) The requested URL returned error: 404 Not Found
Searching for binary rubies, this might take some time.
Found remote file https://repo1.maven.org/maven2/org/jruby/jruby-dist/1.7.27/jruby-dist-1.7.27-bin.tar.gz
Checking requirements for ubuntu.
Requirements installation successful.
jruby-1.7 - #configure
jruby-1.7 - #download
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 21.6M  100 21.6M    0     0  17.4M      0  0:00:01  0:00:01 --:--:-- 17.4M
No checksum for downloaded archive, recording checksum in user configuration.
jruby-1.7 - #validate archive
jruby-1.7 - #extract
jruby-1.7 - #validate binary
jruby-1.7 - #setup
jruby-1.7 - #gemset created /home/travis/.rvm/gems/jruby-1.7@global
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by jnr.posix.JavaLibCHelper to method sun.nio.ch.SelChImpl.getFD()
WARNING: Please consider reporting this to the maintainers of jnr.posix.JavaLibCHelper
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
io/console on JRuby shells out to stty for most operations
** Updating RubyGems to the latest compatible version for security reasons. **
** If you need an older version, you can downgrade with 'gem update --system OLD_VERSION'. **
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.jruby.util.io.ChannelDescriptor to method sun.nio.ch.SelChImpl.getFD()
WARNING: Please consider reporting this to the maintainers of org.jruby.util.io.ChannelDescriptor
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
io/console on JRuby shells out to stty for most operations
jruby-1.7 - #importing gemset /home/travis/.rvm/gemsets/jruby/global.gems.....
Error running 'gemset_import_list jruby-openssl jruby-launcher gem-wrappers rubygems-bundler bundler rake rvm',
please read /home/travis/.rvm/log/1565687396_jruby-1.7/gemsets.import.global.log
jruby-1.7 - #generating global wrappers........
Error running 'run_gem_wrappers regenerate',
please read /home/travis/.rvm/log/1565687396_jruby-1.7/gemset.wrappers.global.log
jruby-1.7 - #uninstalling gem Error occurred during initialization of boot-layer.
Error running 'command gem uninstall Error occurred during initialization of boot -v layer -x',
please read /home/travis/.rvm/log/1565687411_jruby-1.7/gem.uninstall.Error_occurred_during_initialization_of_boot-layer.log
jruby-1.7 - #uninstalling gem java.lang.module.FindException: Unable to derive module descriptor for-/home/travis/.rvm/rubies/jruby-1.7/lib/jruby.jar.
Error running 'command gem uninstall java.lang.module.FindException: Unable to derive module descriptor for -v /home/travis/.rvm/rubies/jruby-1.7/lib/jruby.jar -x',
please read /home/travis/.rvm/log/1565687411_jruby-1.7/gem.uninstall.java.lang.module.FindException:_Unable_to_derive_module_descriptor_for-_home_travis_.rvm_rubies_jruby-1.7_lib_jruby.jar.log
jruby-1.7 - #uninstalling gem Caused by: java.lang.module.InvalidModuleDescriptorException: YechtService.class found in top-level directory (unnamed package not allowed in-module).
Error running 'command gem uninstall Caused by: java.lang.module.InvalidModuleDescriptorException: YechtService.class found in top-level directory (unnamed package not allowed in -v module) -x',
please read /home/travis/.rvm/log/1565687411_jruby-1.7/gem.uninstall.Caused_by:_java.lang.module.InvalidModuleDescriptorException:_YechtService.class_found_in_top-level_directory_(unnamed_package_not_allowed_in-module).log
jruby-1.7 - #uninstalling gem Caused by: java.lang.module.InvalidModuleDescriptorException: YechtService.class found in top-level directory unnamed package not allowed in-module.
Error running 'command gem uninstall Caused by: java.lang.module.InvalidModuleDescriptorException: YechtService.class found in top-level directory unnamed package not allowed in -v module -x',
please read /home/travis/.rvm/log/1565687411_jruby-1.7/gem.uninstall.Caused_by:_java.lang.module.InvalidModuleDescriptorException:_YechtService.class_found_in_top-level_directory_unnamed_package_not_allowed_in-module.log
jruby-1.7 - #gemset created /home/travis/.rvm/gems/jruby-1.7
jruby-1.7 - #importing gemset /home/travis/.rvm/gemsets/default.gems.
Error running 'gemset_import_list rake bundler',
please read /home/travis/.rvm/log/1565687412_jruby-1.7/gemsets.import.default.log
jruby-1.7 - #generating default wrappers..................
Error running 'run_gem_wrappers regenerate',
please read /home/travis/.rvm/log/1565687412_jruby-1.7/gemset.wrappers.default.log
Using /home/travis/.rvm/gems/jruby-1.7
0.18s$ gem install bundler -v '< 2'
Error occurred during initialization of boot layer
java.lang.module.FindException: Unable to derive module descriptor for /home/travis/.rvm/rubies/jruby-1.7/lib/jruby.jar
Caused by: java.lang.module.InvalidModuleDescriptorException: YechtService.class found in top-level directory (unnamed package not allowed in module)
The command "gem install bundler -v '< 2'" failed and exited with 1 during .
Your build has been stopped.

Probably a side effect of the default changing from Trusty to Xenial.

It’s not entirely clear to me how you would make this work on Xenial, but you could try choosing different versions of JDK, and/or pinning to older versions of JRuby.

I couldn’t find when that change happened. If it happened about a week or two ago, it could be, if the change was done before that there would be no direct link.