基于SonarQube的多模块项目分析

基于SonarQube的多模块项目分析,sonarqube,sonar-runner,sonarqube5.1,Sonarqube,Sonar Runner,Sonarqube5.1,SonarQube服务器5.1.2,Sonar Runner 2.4 如中所述,我创建了一个项目结构 Accounts | ->invoice | ->src ->receipt | ->src ->sonar.properties 文件:sonar.properties sonar.projectKey=org.mycompany.acc sonar.projectName=Account sonar.projectVersion=1.0

SonarQube服务器5.1.2,Sonar Runner 2.4

如中所述,我创建了一个项目结构

Accounts
|
->invoice
  |
   ->src

->receipt
  |
   ->src

->sonar.properties
文件:sonar.properties

sonar.projectKey=org.mycompany.acc
sonar.projectName=Account
sonar.projectVersion=1.0

sonar.sources=src

sonar.modules=invoice,receipt

invoice.sonar.projectName=Invoice
receipt.sonar.projectName=Receipt
在sonar runner中执行上述配置时,我遇到错误“Account”目录中缺少“src”文件夹,希望此配置与该链接中可用的配置相同。根据了解,如果配置良好,则发票和收据将被列为账户项目下的子项目,因此在上述配置中需要进行哪些更改,以实现一个项目下的多模块/项目

错误

错误:执行Sonar runner时出错
错误:无法执行声纳
错误:原因:org.mycompany.acc(基本)的文件夹“src”不存在
目录=C:\Users\xyz\Accounts\)
错误:
错误:要查看错误的完整堆栈跟踪,请使用t重新运行SonarQube Runner
he-e开关。
错误:使用-X开关重新运行SonarQube Runner以启用完全调试日志记录。

尝试以下操作:

sonar.projectKey=org.mycompany.acc
sonar.projectName=Account
sonar.projectVersion=1.0

sonar.sources=src # try to remove this by the way if you don't have suchdirectory under root folder of project

sonar.modules=invoice,receipt

invoice.sonar.projectName=Invoice
invoice.sonar.sources=invoice/src
receipt.sonar.projectName=Receipt
receipt.sonar.sources=receipt/src

您可以尝试此选项,如果要同时扫描多个项目或在同一生成中扫描多个项目,请尝试此选项

sonar.sources=发票、收据


这是一个“错误”还是一个警告?所以你需要为模块指定基本目录。@bheshgurhung,你甚至尝试了
sonar.projectBaseDir=C:/Users/xyz/Accounts
,但仍然得到相同的错误。只有当我在
C:/Users/xyz/Accounts
路径中有
src
文件夹时,它才能解决问题,但它应该引用模块文件夹中的src,对吗?SonarQube和SonarQube Runner的版本是什么?@JulienH.-SonarSourceTeam SonarQube服务器5.1.2,Sonar Runner 2.4与SonarQube版本6一起工作,SonarQube Scanner 2.8在Sonar 6.2中不适用于我。根据上面的文档链接,您可以通过在每个模块目录中放置一个嵌套的
Sonar.properties
文件来实现类似的功能,并仅覆盖相关设置。