ParallelStreams.kts:41:15: error: calls to static methods in Java interfaces are prohibited in JVM target 1.6. Recompile with '-jvm-target 1.8' IntStream.range(0,10).parallel().forEach{a -> ^Ok... no estoy tratando de compilar para 1.6.
File > Project Structure > Project tiene SDK de proyecto 1.8 y nivel de idioma 8 .
File > Project Structure > Modules > Kotlin tiene plataforma de destino: JVM 1.8 .
File > Project Structure > Facets > Kotlin tiene una plataforma de destino: JVM 1.8 .
File > Settings > Compiler > Kotlin Compiler tiene destino jvm versión 1.8 .
Mi archivo de compilación gradle...
plugins { id 'org.jetbrains.kotlin.jvm' version '1.3.0' } group 'foo' version '1.0-SNAPSHOT' repositories { mavenCentral() } dependencies { //kotlin implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8" implementation "org.jetbrains.kotlin:kotlin-script-runtime:1.3.0" //networking implementation 'com.mashape.unirest:unirest-java:1.4.9' } compileKotlin { kotlinOptions.jvmTarget = "1.8" } compileTestKotlin { kotlinOptions.jvmTarget = "1.8" } Me estoy quedando sin lugares para verificar 1.8 .
Y sí, he intentado invalidar el caché y reiniciar Intellij. No hace nada para resolver este problema.
Agregue sourceCompatibility y targetCompatibility para Java 1.8:
plugins { id 'org.jetbrains.kotlin.jvm' version '1.3.0' } group 'foo' version '1.0-SNAPSHOT' repositories { mavenCentral() } // Add compatibility sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 dependencies { //kotlin implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8" implementation "org.jetbrains.kotlin:kotlin-script-runtime:1.3.0" //networking implementation 'com.mashape.unirest:unirest-java:1.4.9' } compileKotlin { kotlinOptions.jvmTarget = "1.8" } compileTestKotlin { kotlinOptions.jvmTarget = "1.8" }Con .kts solo usa esto:
tasks { withType<KotlinCompile> { kotlinOptions.jvmTarget = "1.8" } } // I am using latest dsl and gradle val kotlinVersion = "1.3.30" val gradleVersion = "5.4+"Dado que las tareas de compilación se generan para todas las configuraciones relevantes, es probable que solo cambiar compileKotlin y compileTestKotlin no sea suficiente.
Intente usar el filtrado de tareas para configurar todas las instancias de tareas de KotlinCompile :
tasks.withType(KotlinCompile) { kotlinOptions.jvmTarget = "1.8" }