美文网首页
Sonar插件中获取自定义变量

Sonar插件中获取自定义变量

作者: 戈壁堂 | 来源:发表于2021-04-17 20:21 被阅读0次

    例如sonarscanner执行扫描时传递的参数-Dsonar.projectKey可以在插件中使用context.getProject().key()获取到。

    Is it possible to get some customized parameters in Custom rule?

    可以利用SensorProjectSensor传递自定义变量。前者在每一个module执行时都会被调用;后者针对每个project只调用一次

    实现的接口void execute(SensorContext context);中,从对象APIorg.sonar.api.scanner.sensor.SensorContext中可获取Configuration对象,顾名思义,包含了针对project级别所有的信息。例如,传递-Dsonar.mycontxt.name=abc的自定义参数,可以通过sensorContext.config().get("sonar.mycontxt.name")获取自定义的变量。

    注意:

    • Sensor的execute方法可以指定执行的时间点,默认在文件扫描之后执行,可以通过注解@Phase(name = Phase.Name.PRE)让sensor在执行具体的代码扫描之前运行。
    • 自定义的Sensor需要添加到plugin的配置中,例如MySensor可以使用context.addExtension(MySensor.class);添加到插件定义中

    相关文章

      网友评论

          本文标题:Sonar插件中获取自定义变量

          本文链接:https://www.haomeiwen.com/subject/mlvbzktx.html