Do not trim getType from com.intellij.lang.jvm.JvmParameter
Since K2 KAPT uses this API, absence of class bodies in classes from the package leads to java.lang.NoSuchMethodError #KT-61879 Fixed
This commit is contained in:
committed by
Space Team
parent
28fabf06fc
commit
e5aa737eaf
+13
-1
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.gradle
|
||||
|
||||
import org.gradle.util.GradleVersion
|
||||
import org.jetbrains.kotlin.gradle.testbase.TestProject
|
||||
import org.jetbrains.kotlin.gradle.testbase.*
|
||||
import org.junit.jupiter.api.Disabled
|
||||
import org.junit.jupiter.api.DisplayName
|
||||
import kotlin.io.path.appendText
|
||||
@@ -39,6 +39,18 @@ class Kapt4IT : Kapt3IT() {
|
||||
|
||||
@Disabled("Doesn't make sense in Kapt 4")
|
||||
override fun testRepeatableAnnotationsWithOldJvmBackend(gradleVersion: GradleVersion) {}
|
||||
|
||||
@DisplayName("KT-61879: K2 KAPT works with proguarded compiler jars and enum class")
|
||||
@GradleTest
|
||||
fun testEnumClass(gradleVersion: GradleVersion) {
|
||||
project("simple".withPrefix, gradleVersion) {
|
||||
javaSourcesDir().resolve("test.kt").appendText("\nenum class TestEnum")
|
||||
build("build") {
|
||||
assertKaptSuccessful()
|
||||
assertFileExists(kotlinClassesDir().resolve("example/TestEnum.class"))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@DisplayName("Kapt 4 with classloaders cache")
|
||||
|
||||
@@ -319,3 +319,6 @@
|
||||
kotlinx.collections.immutable.PersistentMap toPersistentHashMap(java.util.Map);
|
||||
kotlinx.collections.immutable.PersistentSet persistentHashSetOf(java.lang.Object[]);
|
||||
}
|
||||
-keepclassmembers class com.intellij.lang.jvm.JvmParameter {
|
||||
com.intellij.lang.jvm.types.JvmType getType();
|
||||
}
|
||||
Reference in New Issue
Block a user