SonarQube:构建新的PL / SQL插件

时间:2015-08-07 11:56:39

标签: sonarqube sonarqube-5.0

我正在为SonarQube开发一个新的PL / SQL插件(语言:&#34; plsql&#34;,键:&#34; plsql-cop&#34; )(使用< strong> sonarqube-5.0.1 ),我的PL / SQL&#34;检查器&#34;是一个外部java程序,它正在分析PL / SQL代码并创建一个包含所有找到的建议的XML报告。我开始使用推荐的&#34;声纳参考插件&#34;从GitHub做到这一点。为了测试我的插件,我在网络浏览器中的localhost上使用SonarQube。

规则通过实施&#34; RulesDefinition&#34;;这部分很容易实现,工作正常,我可以在选项卡&#34;规则&#34;中找到我在本地运行的SonarQube中的所有PL / SQL规则。

该配置文件现在更难实施。所以我通过&#34; Restore Profile&#34;手动导入了我的XML配置文件。按钮进入选项卡上的SonarQube Web应用程序&#34;质量配置文件&#34;成功(没有错误)。但我无法看到我的规则映射我的规则。事实上,我无法在标签上看到我的个人资料定义&#34;质量资料&#34;任何地方。但是当我安装 sonar-plsql-plugin-2.7 时,我可以看到我的配置文件与我的映射规则,并导致&#34;声纳方式&#34;定义

现在我的问题是:

  1. 为什么我必须安装SonarQube PL / SQL插件才能看到 部分&#34; PL / SQL配置文件&#34;关于&#34;质量概况&#34;标签?
  2. 如何制作自己的&#34; PL / SQL配置文件&#34;关于&#34;质量的部分 简档&#34;标签?
  3. 当我尝试分析一些PL / SQL项目时,过程停止了 以下错误消息&#34;错误:Sonar跑步者出错 执行错误:无法执行声纳错误:引起:否 plsql&#34;的许可证。我可以不为SonarCube创建自己的插件 语言&#34; plsql&#34;?
  4. 如何使用我自己的插件分析PL / SQL而无需获取 上面的错误信息,仍然可以在SonarCube中查看我的个人资料?
  5. 非常感谢任何帮助!我想继续使用我自己的SonarQube PL / SQL插件。

1 个答案:

答案 0 :(得分:2)

  1. 未经许可,不得安装商业PL / SQL插件。你也不允许改变它。因此,您应该获得有效的许可证,或者从SonarQube服务器卸载它。
  2. 了解PHP等开源语言插件是如何实现的:PHPProfile.java
  3. 见第1点
  4. 见第1点
  5. 以下是需要考虑的一些注意事项:

    1. 如果您希望在未安装SonarQube PL / SQL插件的情况下使用插件,则需要在插件中声明新的SonarQube语言:请参阅Php.java
    2. 如果您希望能够在没有SonarQube PL / SQL插件的情况下使用插件(即在项目中同时运行),则需要使用与{{1}不同的语言名称。 - 否则来自官方插件的许可证验证将启动[即 - 仅当它安装时当然]。
    3. 如果你想让你的插件成为SonarQube PL / SQL插件的一个纯粹的补充(即你必须安装它并拥有它的有效许可证) - 那么你不需要声明你自己的SonarQube语言:只需创建一个使用现有 onkeyup: function (element, event) { var parent = $(element).closest('.form-group'); if(event.keyCode == 9){ return false; } if ($(element).is('[aria-invalid]')){ if ($(element).valid()) { parent.removeClass('has-error'); parent.next('.error').remove(); } }else{ return false; } }, 语言密钥的新规则配置文件。