The stdout, stderr is not captured with java 9 and 10.
I'm running this simple test on Ubuntu 16.04 and SLES with the same result
require 'open3'
Open3.popen3('echo 123') do |_stdin, stdout, _stderr|
out = stdout.read.strip
fail "exprected '123' but got '#{out}'" unless out == '123'
end
With Java 10.0.1 and 9.1.13 it works fine.
Starting from jruby 9.1.14 the test fails.
Switching to Java 1.8.0_144 the test works again with jruby version greater than 9.1.13.