Skip to content

jruby can't be used w/ jdk 9 #2077

@iignatev

Description

@iignatev
$ java -showversion -jar ./lib/jruby.jar -e "puts 'test'"
java version "1.9.0-ea-fastdebug"
Java(TM) SE Runtime Environment (build 1.9.0-ea-fastdebug-b36)
Java HotSpot(TM) 64-Bit Server VM (build 1.9.0-ea-fastdebug-b36, mixed mode)

Exception in thread "main" java.lang.ExceptionInInitializerError
        at org.jruby.Main.<init>(Main.java:99)
        at org.jruby.Main.main(Main.java:193)
Caused by: java.lang.RuntimeException: unsupported Java version: 1.9
        at org.jruby.RubyInstanceConfig.initGlobalJavaVersion(RubyInstanceConfig.java:1858)
        at org.jruby.RubyInstanceConfig.<clinit>(RubyInstanceConfig.java:1608)
        ... 2 more

suggested fix:

diff --git a/core/src/main/java/org/jruby/RubyInstanceConfig.java b/core/src/main/java/org/jruby/RubyInstanceConfig.java
index 21ebfc5..a4c304b 100644
--- a/core/src/main/java/org/jruby/RubyInstanceConfig.java
+++ b/core/src/main/java/org/jruby/RubyInstanceConfig.java
@@ -1774,7 +1774,7 @@ public class RubyInstanceConfig {
            return Opcodes.V1_5;
         } else if (specVersion.equals("1.6")) {
             return Opcodes.V1_6;
-        } else if (specVersion.equals("1.7") || specVersion.equals("1.8")) {
+        } else if (specVersion.equals("1.7") || specVersion.equals("1.8") || specVersion.equals("1.9")) {
             return Opcodes.V1_7;
         } else {
             throw new RuntimeException("unsupported Java version: " + specVersion);

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