【发布时间】:2017-09-02 01:23:08
【问题描述】:
我正在做一个项目,用 jenkins 中的 sonarqube 分析代码。工作空间下的项目结构为:/var/lib/jenkins/workspace/myproject-trunk-sonar/myproject/pom.xml、Module1、Module2等
我的 sonar-project.properties:
# Required metadata
sonar.projectKey=Myproject
sonar.projectName=Myproject
sonar.projectVersion=1.0
#Set modules IDs
sonar.modules=Module1, Module2
# Comma-separated paths to directories with sources (required)
sonar.sources=src/main/java
# Language
sonar.language=java
# Encoding of the source files
sonar.sourceEncoding=UTF-8
如果我的 pom.xml 和模块所在的 /var/lib/jenkins/workspace/myproject-trunk-sonar/myproject 下有 sonar-project.properties 文件,我会看到以下错误:
ERROR: Error during SonarQube Scanner execution
ERROR: You must define the following mandatory properties for 'Unknown': sonar.projectKey, sonar.sources
ERROR:
ERROR: Re-run SonarQube Scanner using the -X switch to enable full debug logging.
ERROR: SonarQube scanner exited with non-zero code: 1
如果我在 /var/lib/jenkins/workspace/myproject-trunk-sonar 下有 sonar-project.properties 文件,我会看到以下错误:
ERROR: Error during SonarQube Scanner execution
java.lang.IllegalStateException: The base directory of the module 'Module1' does not exist: /var/lib/jenkins/workspace/myproject-trunk-sonar/Module1
at org.sonarsource.scanner.cli.Conf.setModuleBaseDir(Conf.java:180)
at org.sonarsource.scanner.cli.Conf.loadModuleConfigFile(Conf.java:172)
at org.sonarsource.scanner.cli.Conf.loadModulesProperties(Conf.java:137)
at org.sonarsource.scanner.cli.Conf.loadProjectProperties(Conf.java:111)
at org.sonarsource.scanner.cli.Conf.properties(Conf.java:59)
at org.sonarsource.scanner.cli.Main.execute(Main.java:68)
at org.sonarsource.scanner.cli.Main.main(Main.java:61)
ERROR:
ERROR: Re-run SonarQube Scanner using the -X switch to enable full debug logging.
ERROR: SonarQube scanner exited with non-zero code: 1
如何让声纳扫描仪查看带有 java 代码的模块所在的目录?当我在模块所在的目录中有属性文件时,它甚至找不到属性文件并抱怨缺少必填字段。
感谢您的帮助。
【问题讨论】:
-
如果你有一个 Maven 项目,那么你应该使用
mvn sonar:sonar执行分析(当然是在编译之后) -
感谢您的快速回复。我尝试了 mvn sonar:sonar 并看到以下错误:[ERROR] Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.0:sonar (default-cli) on project Myproject: Execution default-cli of goal org.codehaus.mojo:sonar-maven-plugin:2.0:sonar failed: A required class is missing while execution org.codehaus.mojo:sonar-maven-plugin:2.0:sonar: org/sonatype/aether/graph/DependencyFilter 谢谢寻求帮助。
标签: java maven jenkins sonarqube