Java 如何以编程方式从intellij Idea插件获取intellij Idea中的检查或静态代码分析错误?

Java 如何以编程方式从intellij Idea插件获取intellij Idea中的检查或静态代码分析错误?,java,intellij-idea,intellij-plugin,static-code-analysis,Java,Intellij Idea,Intellij Plugin,Static Code Analysis,我想为intellij idea创建一个插件,我想获取检查或代码分析错误。默认情况下,intellij将显示这些代码检查,如错误、死代码或未使用的组件。因此,我想将这些检查按语法形式添加到我的插件中。我可以从插件中创建一个工具按钮并获取代码。过程是, 使用一些操作和工具为intellij Idea创建插件 菜单 运行插件,在中创建单独的Instance 智能基德 在编辑器中的intellij新实例中编写了一些java代码 -->在这方面,它将显示 检查或错误 因此,我想对我的插件进行检查。我如何

我想为intellij idea创建一个插件,我想获取检查或代码分析错误。默认情况下,intellij将显示这些代码检查,如错误、死代码或未使用的组件。因此,我想将这些检查按语法形式添加到我的插件中。我可以从插件中创建一个工具按钮并获取代码。过程是,

  • 使用一些操作和工具为intellij Idea创建插件 菜单
  • 运行插件,在中创建单独的Instance 智能基德
  • 在编辑器中的intellij新实例中编写了一些java代码
  • -->在这方面,它将显示 检查或错误


    因此,我想对我的插件进行检查。我如何才能做到这一点?

    获取给定文件集中检查错误的最简单API是:


    如果您知道需要什么样的精确检查,您可以通过以下方式获得:

    PhpUnusedAliasInspection inspection = new PhpUnusedAliasInspection();
    InspectionManager manager = InspectionManager.getInstance(psiFile.getProject());
    List<ProblemDescriptor> checked = inspection.processFile(psiFile, manager);
    System.out.println("checked " + checked);
    
    其中
    phpunusedaliasisinspection
    可以是扩展
    LocalInspectionTool
    的任何类(您可以通过打开反编译的
    LocalInspectionTool
    类并单击名称附近的子类圆圈来列出所有类)

    PhpUnusedAliasInspection inspection = new PhpUnusedAliasInspection();
    InspectionManager manager = InspectionManager.getInstance(psiFile.getProject());
    List<ProblemDescriptor> checked = inspection.processFile(psiFile, manager);
    System.out.println("checked " + checked);
    
    checked [Import 'Illuminate\Database\Eloquent\Model' is never used]