[英]Kotlin withTimeout does not work in Intellij gradle project
[英]How does Deprecated ReplaceWith work for Kotlin in intellij?
我写了这段代码:
@Deprecated("Old stuff", ReplaceWith("test2"))
fun test1(i: Int) {
println("old Int = $i")
}
fun test2(i: Int) {
println("new Int = $i")
}
fun main(args: Array<String>) {
test1(3)
}
由于某种原因,当我按Alt + Enter并单击“用test2
替换”时,方法test1
消失并且没有被替换,我在做什么错?
编辑:
它确实适用于类:
@Deprecated("Old stuff", ReplaceWith("Test2"))
class Test1
class Test2
fun main(args: Array<String>) {
val a = Test1()
}
您需要告诉您如何精确地替换它...虽然我不知道为什么它被完全删除了,但我将向您展示我的意思:
如果要改用以下内容:
@Deprecated("Old stuff", ReplaceWith("test2(i)"))
它将正确替换您对test2(5)
test1(5)
调用。
还要注意,有时如果不清楚应该进行哪个替换,则可能还需要添加软件包名称,例如:
@Deprecated("Old stuff", ReplaceWith("org.example.test2(i)"))
// or just use:
@Deprecated("Old stuff", ReplaceWith("test2(i)", /* here come the imports */ "org.example.test2"))
如果需要,还可以在替换中使用静态值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.