不能执行kotlin协程(没有这样的方法exception
我从kotlin例子中拿出了这个简单的代码片段:
fun main(args: Array) = runBlocking { withTimeout(1300L) { repeat(1000) { i -> println("I'm sleeping $i ...") delay(500L) } } }
当我尝试运行它时,它会抛出
java.lang.NoSuchMethodError: kotlinx.coroutines.experimental.ScheduledKt.withTimeout$default(JLjava/util/concurrent/TimeUnit;Lkotlin/jvm/functions/Function2;ILjava/lang/Object;)Ljava/lang/Object;
我用kotlinVersion =’1.1.51′
有什么建议?
在你的情况下,确保在你的build.gradle文件中启用协程:
kotlin { experimental { coroutines "enable" } }
你也应该通过启动(UI)来触发你的协同程序,并明确地调用wait()和挂起的方法。 其余的代码将在UI线程上执行。
希望它解决了你的问题!