summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/ant/templates/tool-unix.tmpl
diff options
context:
space:
mode:
Diffstat (limited to 'src/compiler/scala/tools/ant/templates/tool-unix.tmpl')
-rwxr-xr-xsrc/compiler/scala/tools/ant/templates/tool-unix.tmpl8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/ant/templates/tool-unix.tmpl b/src/compiler/scala/tools/ant/templates/tool-unix.tmpl
index 7ab23eb556..b5a238f7be 100755
--- a/src/compiler/scala/tools/ant/templates/tool-unix.tmpl
+++ b/src/compiler/scala/tools/ant/templates/tool-unix.tmpl
@@ -197,6 +197,14 @@ fi
# to java to suppress "." from materializing.
if [[ "$usebootcp" == "true" ]]; then
classpath_args=("-Xbootclasspath/a:$TOOL_CLASSPATH" -classpath "\"\"")
+ # Note that the version numbers go 1.7, 1.8, 9, 10, ...
+ java_release="$(cat $JAVA_HOME/release | grep JAVA_VERSION)"
+ if [[ ! "$java_release" =~ JAVA_VERSION=\"1\. ]]; then
+ # Java 9 removed sun.boot.class.path, and the supposed replacement to at least see
+ # the appended boot classpath (jdk.boot.class.path.append) is not visible.
+ # So we have to pass a custom system property that PathResolver will find.
+ classpath_args+=("-Dscala.boot.class.path=$TOOL_CLASSPATH")
+ fi
else
classpath_args=(-classpath "$TOOL_CLASSPATH")
fi