我正在尝试将方法 (PsiMethod) 添加到类 (PsiClass) 中,以便 IDEA 在键入时显示此方法。我这样做了,但是我遇到了一个问题:当我将 PsiMethod 添加到 PsiClass 时,这个方法的文本出现在文件中,我不需要它。我需要添加一个方法,以便 IDEA 突出显示它,但它不会作为文本显示在文件中。
如何才能做到这一点?
这是我如何将 PsiMethod 添加到 PsiClass 的代码:
val module = ModuleManager.getInstance(project).modules.first()
val file = FilenameIndex
.getFilesByName(
project,
"TestPsiFile.java",
module.moduleContentScope)
.first()
val newMethod = PsiElementFactory.getInstance(project).createMethod("testMethod", PsiType.VOID)
WriteCommandAction.runWriteCommandAction(project) {
file.children
.filter { it.elementType == JavaElementType.CLASS }
.map { it.add(newMethod) }
}
Jetbrains 社区中此问题的链接: link