Trying to run the simplest example with corutines :
import kotlinx.coroutines.* fun main() { GlobalScope.launch { delay(1000L) println("${Thread.currentThread().name}: World") } println("${Thread.currentThread().name}: Hello") Thread.sleep(2000L) println("${Thread.currentThread().name}: Finish!") } The build.gradle file looks like this:
buildscript { // Consider moving these values to `gradle.properties` ext.kotlin_version = '1.3.0-rc-146' ext.kotlin_gradle_plugin_version = '1.3.0-rc-198' ext.kotlinx_coroutines = '1.0.0-RC1' repositories { maven { url "https://kotlin.bintray.com/kotlin-eap" } mavenCentral() jcenter() google() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.51" } } plugins { id 'org.jetbrains.kotlin.jvm' version "1.1.51" } apply plugin: 'idea' apply plugin: 'application' group 'by.kotlin' version '1.0-SNAPSHOT' mainClassName = 'MainKt' repositories { maven { url "https://kotlin.bintray.com/kotlin-eap" } mavenCentral() jcenter() google() } dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" implementation "org.jetbrains.kotlin:kotlin-stdlib-common:$kotlin_version" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlinx_coroutines" } compileKotlin { kotlinOptions.jvmTarget = "1.8" } compileTestKotlin { kotlinOptions.jvmTarget = "1.8" } And when I start, I get the following errors:
e: ...Main.kt: (6, 17): 'launch(CoroutineContext = ..., CoroutineStart = ..., [ERROR : Bad suspend function in metadata with constructor: Function2]<CoroutineScope, Continuation<Unit>, Any?>): Job' is only available since Kotlin 1.3 and cannot be used in Kotlin 1.2 e: ...Main.kt: (7, 9): Suspend function 'delay' should be called only from a coroutine or another suspend function e: ...Main.kt: (7, 9): 'delay(Long): Unit' is only available since Kotlin 1.3 and cannot be used in Kotlin 1.2 > Task :compileKotlin FAILED What is the cause of this error?
IntelliJ IDEA settings:
