Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java SonarQube 5.6是否在使用sonar插件api版本4.5.2开发的插件中执行修饰符?_Java_C#_Sonarqube_Sonarqube Web - Fatal编程技术网

Java SonarQube 5.6是否在使用sonar插件api版本4.5.2开发的插件中执行修饰符?

Java SonarQube 5.6是否在使用sonar插件api版本4.5.2开发的插件中执行修饰符?,java,c#,sonarqube,sonarqube-web,Java,C#,Sonarqube,Sonarqube Web,我安装了sonarqube 5.6,并下载了C#插件 我决定扩展C#插件,因此继续下载所安装插件的代码(版本5.3.2) C#插件项目参考了sonar插件api版本4.5.2 因此,我添加了需要为项目级别计算的新度量,并在文档之后创建了一个新的度量 我在插件中添加了类: public class CSharpPlugin extends SonarPlugin { public static final String LANGUAGE_KEY = "cs"; public static

我安装了sonarqube 5.6,并下载了C#插件

我决定扩展C#插件,因此继续下载所安装插件的代码(版本5.3.2)

C#插件项目参考了sonar插件api版本4.5.2

因此,我添加了需要为项目级别计算的新度量,并在文档之后创建了一个新的度量

我在插件中添加了类:

public class CSharpPlugin extends SonarPlugin {

  public static final String LANGUAGE_KEY = "cs";
  public static final String LANGUAGE_NAME = "C#";

  public static final String FILE_SUFFIXES_KEY = "sonar.cs.file.suffixes";
  public static final String FILE_SUFFIXES_DEFVALUE = ".cs";

  public static final String CSHARP_WAY_PROFILE = "Sonar way";

  public static final String REPOSITORY_KEY = "csharpsquid";
  public static final String REPOSITORY_NAME = "SonarQube";

  public static final String IGNORE_HEADER_COMMENTS = "sonar.cs.ignoreHeaderComments";
  public static final String NUMBER_FUNCTION_THRESHOLD = "sonar.cs.numberFunctionThreshold";
  public static final String NUMBER_LOC_THRESHOLD = "sonar.cs.numberLocThreshold";

  @Override
  public List getExtensions() {
    ImmutableList.Builder builder = ImmutableList.builder();

    builder.add(
      CSharp.class,
      CSharpSonarRulesDefinition.class,
      CSharpSonarWayProfile.class,
      CSharpCommonRulesEngine.class,
      CSharpCommonRulesDecorator.class,
      CSharpSourceCodeColorizer.class,
      RuleRunnerExtractor.class,
      CSharpSensor.class,
      CSharpCPDMapping.class,
      SonarLintProfileExporter.class,
      SonarLintFakeProfileImporter.class,
      RoslynProfileExporter.class,
      MyMetrics.class,
      CSharpMyDecorator.class
      );

    builder.addAll(CSharpFxCopProvider.extensions());
    builder.addAll(CSharpCodeCoverageProvider.extensions());
    builder.addAll(CSharpUnitTestResultsProvider.extensions());
    builder.addAll(CSharpMsBuildIntegrationProvider.extensions());
    builder.addAll(RoslynProfileExporter.sonarLintRepositoryProperties());

    return builder.build();
  }

}
当我执行分析时,既不会创建度量,也不会存储度量

查看生成的日志(我启用了verbose选项),我没有找到任何对Decorators执行的引用。甚至不是装饰器中代码所期望的日志条目

我正在使用MSBuild.SonarQube.Runner.exe版本2.0


为什么不叫装饰师?SonarQube的版本有问题吗?

扩展点装饰器在5.2版中被删除,因为它不是为5.x系列最想要的功能之一而设计的:将扫描仪与数据库隔离


有关更多详细信息,请访问和访问该组

如果要修改标签,请给出一个答案。尊重他人也会很感激。@SimonBrandhof SonarSource,G.Ann向我道歉,没有什么挫折感。我想使用最新版本的C#插件,但maven存储库已经过时。我从GitHub下载了代码,当我试图编译Maven时,试图从中获取依赖项,但却找不到其中一个(SonarAnalyzer.Scanner)C#plugin和Maven repository之间有什么关系?有关如何安装插件的信息,请参阅。
public class CSharpPlugin extends SonarPlugin {

  public static final String LANGUAGE_KEY = "cs";
  public static final String LANGUAGE_NAME = "C#";

  public static final String FILE_SUFFIXES_KEY = "sonar.cs.file.suffixes";
  public static final String FILE_SUFFIXES_DEFVALUE = ".cs";

  public static final String CSHARP_WAY_PROFILE = "Sonar way";

  public static final String REPOSITORY_KEY = "csharpsquid";
  public static final String REPOSITORY_NAME = "SonarQube";

  public static final String IGNORE_HEADER_COMMENTS = "sonar.cs.ignoreHeaderComments";
  public static final String NUMBER_FUNCTION_THRESHOLD = "sonar.cs.numberFunctionThreshold";
  public static final String NUMBER_LOC_THRESHOLD = "sonar.cs.numberLocThreshold";

  @Override
  public List getExtensions() {
    ImmutableList.Builder builder = ImmutableList.builder();

    builder.add(
      CSharp.class,
      CSharpSonarRulesDefinition.class,
      CSharpSonarWayProfile.class,
      CSharpCommonRulesEngine.class,
      CSharpCommonRulesDecorator.class,
      CSharpSourceCodeColorizer.class,
      RuleRunnerExtractor.class,
      CSharpSensor.class,
      CSharpCPDMapping.class,
      SonarLintProfileExporter.class,
      SonarLintFakeProfileImporter.class,
      RoslynProfileExporter.class,
      MyMetrics.class,
      CSharpMyDecorator.class
      );

    builder.addAll(CSharpFxCopProvider.extensions());
    builder.addAll(CSharpCodeCoverageProvider.extensions());
    builder.addAll(CSharpUnitTestResultsProvider.extensions());
    builder.addAll(CSharpMsBuildIntegrationProvider.extensions());
    builder.addAll(RoslynProfileExporter.sonarLintRepositoryProperties());

    return builder.build();
  }

}