我有这个Java注释声明,想把它用在科特林
class CurlCommand {
Parameter(names = "-groups", description = "Comma-separated list of group names to be run")
var groups: Array<String>? = null
}
编译器报告需要的TYPE_MISMATCH : kotlin.Array Found: kotlin.String
我试过了
Parameter(names = Array<String>(1, {i-> "-groups"}), description = "Comma-separated list of group names to be run")
var groups: Array<String>? = null
得到“Error:(20,23) Kotlin:注释参数必须是编译时常量”。
我如何满足Kotlin编译器?
Java只是接受
@Parameter(names = "-groups", description = "Comma-separated list of group names to be run")
public String groups;
发布于 2016-03-24 23:19:28
您在Kotlin中声明一个常量,如下所示:
const val LG_PACKAGE = "com.myapp"
但是,编译时常数的kotlin文档说它们只能是字符串类型或基元类型。因此,如果要使用常量,可以得到的最接近的值是:
const val LG_PACKAGE = "com.myapp"
@EnableJpaRepositories(basePackages = arrayOf(LG_PACKAGE))
@EntityScan(basePackages = arrayOf(LG_PACKAGE))
open class LgApp {
发布于 2015-04-10 04:42:23
有时候答案很简单,一旦你不小心发现它。
array("-groups")
虽然Kotlin转换器给了我这个代码
@Parameter(names = "-groups", description = "Comma-separated list of group names to be run")
public String groups;
就像我上面提到的。
https://stackoverflow.com/questions/29561395
复制