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="Class-Path" value="${compiler.manifest.class.path}"/>
|
||||||
<attribute name="Main-Class" value="org.jetbrains.kotlin.cli.jvm.K2JVMCompiler"/>
|
<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>
|
</manifest>
|
||||||
</jar>
|
</jar>
|
||||||
</sequential>
|
</sequential>
|
||||||
|
|||||||
@@ -67,6 +67,15 @@ then
|
|||||||
else
|
else
|
||||||
[ -n "$KOTLIN_COMPILER" ] || KOTLIN_COMPILER=org.jetbrains.kotlin.cli.jvm.K2JVMCompiler
|
[ -n "$KOTLIN_COMPILER" ] || KOTLIN_COMPILER=org.jetbrains.kotlin.cli.jvm.K2JVMCompiler
|
||||||
java_args=("${java_args[@]}" "-noverify")
|
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)
|
kotlin_app=("${KOTLIN_HOME}/lib/kotlin-preloader.jar" "org.jetbrains.kotlin.preloading.Preloader" "-cp" "${KOTLIN_HOME}/lib/kotlin-compiler.jar" $KOTLIN_COMPILER)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user