Gradle 尝试在 IntelliJ 插件项目中使用 PsiMethod 构建 class 失败

Gradle fails trying to build class using PsiMethod in IntelliJ Plugin project

我有一个 Intellij 插件项目,我可以在不使用 PsiMethod 的情况下成功构建它 class。我使用 intellij plugin guide

生成了这个项目

只要我使用 PsiMethod 添加代码 class (来自Intellij SDK code_samples directory

智能感知找不到 class 的任何 GOTO 信息。

然后我可以将我的项目设置模块从 JAVA_1.8.0 切换到

通过将其添加到平台设置 SDK 中:

这现在添加了智能感知,让我能够通过 CMD+单击导航到 PsiMethod class。

但是,如果我尝试 运行 我的 "plugin" gradle 配置。它因错误停止 运行ning :运行Ide.

运行 来自 bash 的 compileJava 命令我得到:

$ ./gradlew compileJava


> Task :compileJava FAILED
/Users/cody/IdeaProjects/plugintest/src/main/java/com/plugintest/TestClass.java:104: error: cannot find symbol
            PsiMethod containingMethod = PsiTreeUtil.getParentOfType(element, PsiMethod.class);
            ^
  symbol:   class PsiMethod
  location: class ParticleContainerManager
/Users/cody/IdeaProjects/plugintest/src/main/java/com/plugintest/TestClass.java:104: error: cannot find symbol
            PsiMethod containingMethod = PsiTreeUtil.getParentOfType(element, PsiMethod.class);
                                                                              ^
  symbol:   class PsiMethod
  location: class ParticleContainerManager
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
2 errors

intellij中的gradle源集如下:

当我 CMD+单击 PsiMethod class 时,它显示以下 JAR 源:

此源位于以下父文件夹中:

如何将此源添加到我的 gradle 配置中?它不应该自动检测我的项目智能感知正在利用什么吗?

我是否需要更改项目目录中 gradle.* 文件中的某些内容?

编辑: 使用 Yann 的回答:

我已将以下行添加到我的 build.gradle 文件中:

intellij {
    version '2019.2'
    plugins 'java'
}

而且有效!

请确保将 Java 插件添加为单独的依赖项。从 2019.2 开始,现在必须这样做:https://blog.jetbrains.com/platform/2019/06/java-functionality-extracted-as-a-plugin/