我正在尝试(到目前为止没有任何运气)将 Junit5 @Tempdir 注释与 Kotlin 一起使用。
继之前的 stackoverflow 帖子(链接此处)之后,我尝试了以下代码:
@SpringBootTest
class MyClass {
@TempDir
@JvmField
var tempFolder: File? = null
@Test
fun mytest() {
assert(true);
}
}
不幸的是,我在编译时收到以下错误:“JvmField 只能应用于最终属性”...
有什么想法吗?
预先非常感谢您的专业知识和时间。
最好的问候
对于仍在寻找答案的其他人,下面的代码可以解决上述问题:
@SpringBootTest
class MyClass {
@Test
fun mytest() {
assert(true);
}
companion object {
@TempDir
lateinit var tempFolder: File
}
}
我有一个不同的问题导致我写这篇文章:
尝试在 kotlin 后期初始化变量上使用 @TempDir 并收到未初始化的错误。
结果我用它来派生一些其他字段,而它尚未初始化 - 我通过使这些派生字段使用
by lazy
来解决这个问题。