1

对于我自己的声纳插件的开发,我希望能够调试。过了一会儿,我发现了如何在调试模式下运行 sonarqube 服务器。因此,我按照以下网站的说明进行操作。在此处输入链接描述

当我以调试方式启动服务器时,使用调试配置连接 Eclipse,服务器启动,但它不会在我设置的断点处停止。我已经为扩展点(类)设置了断点,例如扩展 SonarPlugin 类或扩展 RuleRepository 类的断点。这些类的日志是服务器日志文件的一部分,所以我很确定这些类被执行了。尽管如此,它并没有在断点处停止。

任何人的想法是什么问题?

4

1 回答 1

0

服务器作为三个进程运行 - 父应用程序、Web 服务器和搜索服务器。插件被加载到 Web 服务器中,因此您需要使用调试参数来启动它。此选项似乎已更改,尚未反映在文档中。要调试 Web 服务器,请放置:

sonar.web.javaAdditionalOpts=-agentlib:jdwp=transport=dt_socket,suspend=y,server=y,address=9001

进入您的 sonar.peroperties 文件并使用 StartSonar 脚本启动声纳。这将启动所有三个应用程序,但 Web 服务器暂停。将您的调试器附加到端口 9001,您应该会发现您的插件主类和规则定义断点被命中。

于 2015-11-19T18:17:14.803 回答