[Gradle] Provide JNA jar to compiler classpath with intellij-core 203+
#KT-47748 Fixed
This commit is contained in:
@@ -18,6 +18,7 @@ versions.jar.serviceMessages=2019.1.4
|
||||
versions.jar.lz4-java=1.7.1
|
||||
ignore.jar.snappy-in-java=true
|
||||
versions.gradle-api=4.5.1
|
||||
versions.jna=5.6.0
|
||||
versions.shadow=6.1.0
|
||||
versions.junit-bom=5.7.0
|
||||
versions.org.junit.platform=1.7.0
|
||||
|
||||
+3
-1
@@ -38,6 +38,7 @@ private val KOTLIN_SCRIPT_ANNOTATION_EXPECTED_CLASS = "kotlin.script.experimenta
|
||||
private val KOTLIN_JVM_SCRIPT_COMPILER_EXPECTED_CLASS = "kotlin.script.experimental.jvm.JvmScriptCompiler"
|
||||
private val KOTLIN_REFLECT_EXPECTED_CLASS = "kotlin.reflect.full.KClasses"
|
||||
private val TROVE4J_EXPECTED_CLASS = "gnu.trove.THashMap"
|
||||
private val JNA_EXPECTED_CLASS = "com.sun.jna.Structure"
|
||||
private val DAEMON_EXPECTED_CLASS = "org.jetbrains.kotlin.daemon.CompileServiceImpl"
|
||||
internal const val KOTLIN_MODULE_GROUP = "org.jetbrains.kotlin"
|
||||
private val KOTLIN_GRADLE_PLUGIN = "kotlin-gradle-plugin"
|
||||
@@ -77,7 +78,7 @@ internal fun findKotlinCompilerClasspath(project: Project): List<File> {
|
||||
return findKotlinStdlibClasspath(project) +
|
||||
findKotlinScriptRuntimeClasspath(project) +
|
||||
findKotlinReflectClasspath(project) +
|
||||
listOfNotNull(findTrove4j(), findDaemon())
|
||||
listOfNotNull(findTrove4j(), findJna(), findDaemon())
|
||||
}
|
||||
|
||||
internal fun findJarByClass(classFqName: String): File? {
|
||||
@@ -92,6 +93,7 @@ internal fun findJarByClass(classFqName: String): File? {
|
||||
}
|
||||
|
||||
internal fun findTrove4j() = findJarByClass(TROVE4J_EXPECTED_CLASS)
|
||||
internal fun findJna() = findJarByClass(JNA_EXPECTED_CLASS)
|
||||
internal fun findDaemon() = findJarByClass(DAEMON_EXPECTED_CLASS)
|
||||
|
||||
internal fun findKotlinStdlibClasspath(project: Project): List<File> =
|
||||
|
||||
@@ -26,6 +26,9 @@ dependencies {
|
||||
runtimeOnly(project(":kotlin-reflect"))
|
||||
runtimeOnly(project(":kotlin-daemon-embeddable"))
|
||||
runtimeOnly(commonDep("org.jetbrains.intellij.deps", "trove4j"))
|
||||
Platform[203].orHigher {
|
||||
runtimeOnly(commonDep("net.java.dev.jna", "jna"))
|
||||
}
|
||||
testCompile(commonDep("junit:junit"))
|
||||
testCompile(project(":kotlin-test:kotlin-test-junit"))
|
||||
testCompilationClasspath(kotlinStdlib())
|
||||
|
||||
Reference in New Issue
Block a user