Support running Kotlin compiler CLI on Java 9 on Unix
Workaround IDEA-170005, IDEA-170494 and similar issues by opening the required packages from java.base to the unnamed module #KT-14988 In Progress
This commit is contained in:
@@ -600,6 +600,9 @@
|
||||
|
||||
<attribute name="Class-Path" value="${compiler.manifest.class.path}"/>
|
||||
<attribute name="Main-Class" value="org.jetbrains.kotlin.cli.jvm.K2JVMCompiler"/>
|
||||
|
||||
<!-- This is needed if the compiler is run on Java 9 via "java -jar kotlin-compiler.jar" -->
|
||||
<attribute name="Add-Opens" value="java.base/java.lang java.base/java.util java.base/java.util.concurrent.atomic java.base/jdk.internal.misc"/>
|
||||
</manifest>
|
||||
</jar>
|
||||
</sequential>
|
||||
|
||||
@@ -67,6 +67,15 @@ then
|
||||
else
|
||||
[ -n "$KOTLIN_COMPILER" ] || KOTLIN_COMPILER=org.jetbrains.kotlin.cli.jvm.K2JVMCompiler
|
||||
java_args=("${java_args[@]}" "-noverify")
|
||||
|
||||
if [[ -n $(command -v head) && -n $(command -v tail) && $($JAVACMD -version 2>&1 | head -2 | tail -1) =~ build\ 9 ]]; then
|
||||
java_args=("${java_args[@]}" \
|
||||
"--add-opens" "java.base/java.lang=ALL-UNNAMED" \
|
||||
"--add-opens" "java.base/java.util=ALL-UNNAMED" \
|
||||
"--add-opens" "java.base/java.util.concurrent.atomic=ALL-UNNAMED" \
|
||||
"--add-opens" "java.base/jdk.internal.misc=ALL-UNNAMED")
|
||||
fi
|
||||
|
||||
kotlin_app=("${KOTLIN_HOME}/lib/kotlin-preloader.jar" "org.jetbrains.kotlin.preloading.Preloader" "-cp" "${KOTLIN_HOME}/lib/kotlin-compiler.jar" $KOTLIN_COMPILER)
|
||||
fi
|
||||
|
||||
|
||||
Reference in New Issue
Block a user