3

我有一个 Kotlin 数据类:

package a.b.c

data class Example(
    …
)

我正在用detekt分析它,它提供了对Kotlin PSI的访问。

我正在尝试获取我班级的 FQDN:

println(klass.nameAsName?.identifier)

其中,klass有一种KtClass来自 Kotlin PSI 的类型。但是该代码只打印了我的班级的一个简短名称,例如Example,而我想得到a.b.c.Example.

如何在 Kotlin PSI 中获得类的完全限定域名?

4

1 回答 1

1

KtClass实现KtNamedDeclaration提供fqName方法的接口。

FqName getFqName();

这会给你你想要的。所以:

klass.fqName.asString()

于 2020-06-20T13:18:54.923 回答