Android Dokka失败:com.intellij.psi.impl.source.PsiClassImpl无法转换为com.intellij.psi.PsiJavaFile
我有一个生成Android人工制品的构建(主要是Android Dokka失败:com.intellij.psi.impl.source.PsiClassImpl无法转换为com.intellij.psi.PsiJavaFile,android,gradle,aar,kotlin-dokka,Android,Gradle,Aar,Kotlin Dokka,我有一个生成Android人工制品的构建(主要是.aar)和dokka生成的文档包(代码库是Kotlin+Java) 由于最近的一些更改,dokka开始失败,出现了这个神秘的错误: > Task :mylib:dokka FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':mylib:dokka'. > com.intellij.psi.imp
.aar
)和dokka
生成的文档包(代码库是Kotlin+Java)
由于最近的一些更改,dokka
开始失败,出现了这个神秘的错误:
> Task :mylib:dokka FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':mylib:dokka'.
> com.intellij.psi.impl.source.PsiClassImpl cannot be cast to com.intellij.psi.PsiJavaFile
任何帮助都将不胜感激。我目前似乎无法找到问题的根源。我无法确定问题的根源,但我可以肯定地说,
Dokka
在这方面存在一些问题
在我的更改中,我最初引入了一个新的注释类,该类基于Android的抽象类(以及相关的助手方法),用Java编写
这两个步骤似乎有所帮助:
最终的结果是文档无法引用带注释的类(这并不奇怪,因为它被抑制了),但javadoc生成完全成功。我无法确定问题的根源,但我可以肯定地说,
Dokka
在这方面存在一些问题
在我的更改中,我最初引入了一个新的注释类,该类基于Android的抽象类(以及相关的助手方法),用Java编写
这两个步骤似乎有所帮助:
最终的结果是文档无法引用带注释的类(这并不奇怪,因为它被抑制了),但javadoc生成完全成功。在我的例子中,我只需要采取步骤1来解决ClassCastException。我不必抑制存在注释的新包。事实上,在大多数情况下,我所做的只是将注释从一个内部类移动到同一个包中的顶级类,它为我解决了这个问题。很有趣!我现在不记得在应用步骤2之前发生了什么错误,但如果我记得正确,它无法解析。在我的情况下,我只需要采取步骤1来解决ClassCastException。我不必抑制存在注释的新包。事实上,在大多数情况下,我所做的只是将注释从一个内部类移动到同一个包中的顶级类,它为我解决了这个问题。很有趣!我现在不记得在应用步骤2之前发生了什么错误,但如果我记得正确,它就无法解析。
dokka {
...
packageOptions {
prefix = "com.mylib.myannotation"
suppress = true
}
}