gpt4 book ai didi

java - SonarQube - 帮助创建新的语言插件

转载 作者:搜寻专家 更新时间:2023-10-31 20:21:02 27 4
gpt4 key购买 nike

我正在为 SonarQube 创建一个新插件,它允许开发人员对 ESQL 代码执行静态代码分析。

我可以使用 Maven 构建一个插件的外壳,它会生成 JAR 文件,我可以将其放在正确的文件夹中,以便将其添加到 SonarQube。

下一阶段是为规则编写 Java 类,但是我不确定它们是什么样子以及在哪里。我正在使用来自以下 GIT 存储库的示例:https://github.com/SonarSource/sonar-examples/tree/master/plugins/sonar-reference-plugin

我是否只是创建一个包含一些类的新包?我实际上如何统治?

最佳答案

如果你想为ESQL语言写一个规则引擎,这意味着你必须先为这个语言写一个解析器。只有在完成此阶段后,您才能创建基于该解析器的规则引擎(具有通过 AST 导航并在特定情况下产生问题的访问者类)。

您可以看看我们是如何实现 Javascript 插件的 (see the code of version 1.3):

  • “javascript-squid”模块是编写解析器的地方
  • “javascript-checks”模块是编写规则引擎(基于解析器)的地方
  • “sonar-javascript-plugin”模块是实际的插件,它嵌入了解析器和规则引擎,并围绕它们提供了所有必需的粘合剂。

关于java - SonarQube - 帮助创建新的语言插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17952463/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com