-
Notifications
You must be signed in to change notification settings - Fork 17
Description
Most of the issues reported under jruby/jruby#6049 appear to be due to the fact that we can't detect that the JDK being used supports modules.
Normally if you have JAVA_HOME set to the location of your JDK, we will look for JAVA_HOME/jmods to determine that the JDK supports modules. In some scenarios, only java
will be in path. The logic at present assumes that java
is under JAVA_HOME/bin, and infers JAVA_HOME From that path. Unfortunately on most Linux distributions, java
is installed as a link in /usr/bin, so we can't determine from that path where JAVA_HOME is actually located.
I believe we need a more robust mechanism to determine that the target JDK supports modules.
The workaround for now is to set JAVA_HOME. On most Linux distributions, there will be commands you can run to get the location of the default JDK installation. The JDKs are also usually installed under /usr/lib/jvm; paths there are suitable for JAVA_HOME (just make sure they match the default version of Java run by /usr/bin/java).