【问题标题】:Sonar Custom Widget声纳自定义小部件
【发布时间】:2016-02-04 07:01:27
【问题描述】:

我使用 github 中提供的源代码创建了一个小部件。现在我在 SonarQube V5.3 中使用该小部件。这是我从中获得源代码的地方: https://github.com/SonarSource/sonar-examples/tree/master/plugins/sonar-reference-plugin

当我使用这个小部件时,它会在多个项目中显示相同的数据。我想知道是否有任何方法可以为不同的项目显示不同的数据。请分享你的想法。下面是显示 ruby​​ 小部件的代码

    import org.sonar.api.web.AbstractRubyTemplate;
    import org.sonar.api.web.Description;
    import org.sonar.api.web.RubyRailsWidget;
    import org.sonar.api.web.UserRole;
    import org.sonar.api.web.WidgetCategory;
    import org.sonar.api.web.WidgetProperties;
    import org.sonar.api.web.WidgetProperty;
    import org.sonar.api.web.WidgetPropertyType;
    import org.sonar.api.batch.CheckProject;
    import org.sonar.api.resources.Project;
    @UserRole(UserRole.USER)
    @Description("Sample")
    @WidgetCategory("Sample")
    @WidgetProperties({
      @WidgetProperty(key = "Index",type=WidgetPropertyType.TEXT
      ),

    })
    public class OneMoreRubyWidget extends AbstractRubyTemplate implements RubyRailsWidget {

      @Override
      public String getId() {
        return "Sample";
      }

      @Override
      public String getTitle() {
        return "Sample";
      }

      @Override
      protected String getTemplatePath() {

          return "/example/Index.html.erb";
      }
    }

非常感谢您

【问题讨论】:

    标签: api widget sonarqube sonarqube5.3


    【解决方案1】:

    您尚未在 .java 文件中为您的小部件 (@WidgetScope("GLOBAL")) 指定全局范围,因此这是您的 .erb 文件中的内容的问题。

    这个Widget Lab 属性widget 应该给你一些指示。具体来说:您想在您的小部件中选择@project,并使用@project.uuid 进行查询。 Here's another 用于比较的项目级小部件。

    不过,您应该知道,SonarSource 正在积极努力从平台中移除 Ruby,因此在未来某个日期,您可能最终会重新编写小部件(可能使用纯 JavaScript)。

    【讨论】:

    • 非常感谢您的快速回复。你能帮我理解使小部件显示不同小部件的任何逻辑应该写在.erb文件上吗?我正在尝试开发的这个小部件是一个完全开箱即用的小部件。为此,我需要在 sonar.properties 文件中包含任何内容吗?请指教。提前谢谢你!
    • 看看 Widget 实验室插件(文档:docs.sonarqube.org/display/PLUG/Widget+Lab+Plugin)。
    猜你喜欢
    • 1970-01-01
    • 2012-11-24
    • 1970-01-01
    • 2023-04-02
    • 2018-02-22
    • 2011-09-01
    • 1970-01-01
    • 2016-02-26
    • 1970-01-01
    相关资源
    最近更新 更多