You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There seems to be some sort of incompatibility issue between this library and "kotlin-compiler". If I try to access operations on Compiler (accessed via javac()) such as withProcessors or withOptions, I get NoSuchMethodError exceptions.
This can be minimally reproduced by creating a Gradle project with a build.gradle.kts file in the root directory:
importorg.jetbrains.kotlin.gradle.tasks.KotlinCompileplugins {
kotlin("jvm") version "1.3.0"
}
repositories {
mavenCentral()
}
dependencies {
implementation(kotlin("stdlib-jdk8"))
implementation("com.google.testing.compile:compile-testing:0.15")
// Problematic import when combined with compile-testing
implementation("org.jetbrains.kotlin:kotlin-compiler:1.2.51")
}
tasks.withType<KotlinCompile> {
kotlinOptions.jvmTarget ="1.8"
}
And then creating a file src/main/kotlin/experiment.kt under the project root directory:
Exception in thread "main" java.lang.NoSuchMethodError: com.google.common.collect.ImmutableList.copyOf([Ljava/lang/Object;)Lcom/google/common/collect/ImmutableList;
at com.google.testing.compile.Compiler.withProcessors(Compiler.java:71)
at experiment.ExperimentKt.main(experiment.kt:6)
org.jetbrains.kotlin:kotlin-compiler:1.2.51 bundles its dependencies (including Guava) into the JAR, shadowing the "real" Guava; and it probably uses a version of Guava that didn't have that method. It will thus break anything that also depends on Guava (or any other bundled dependency: JNA, JavaSlang, GNU Trove, JANSI, JDOM, etc.)
Either kotlin-compiler is not meant to be used as a dependency, or they have a packaging issue.
There seems to be some sort of incompatibility issue between this library and "kotlin-compiler". If I try to access operations on
Compiler
(accessed viajavac()
) such aswithProcessors
orwithOptions
, I getNoSuchMethodError
exceptions.This can be minimally reproduced by creating a Gradle project with a
build.gradle.kts
file in the root directory:And then creating a file
src/main/kotlin/experiment.kt
under the project root directory:Running this gives me:
Initially raised at cretz/kastree#4.
The text was updated successfully, but these errors were encountered: