有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java SonarQube:“项目配置文件:无”

我已经配置好了一切,可以在Maven项目上进行声纳分析。一切都很好,直到我运行sonar-runner

     Max$ sonar-runner
     INFO: Scanner configuration file: /Users/Max/Documents/sonar-scanner-2.5/conf/sonar-runner.properties
     INFO: Project configuration file: NONE
     INFO: SonarQube Scanner 2.5
     INFO: Java 1.7.0_45 Oracle Corporation (64-bit)
     INFO: Mac OS X 10.10.3 x86_64
     INFO: User cache: /Users/Max/.sonar/cache
     INFO: Load global repositories
     INFO: Load global repositories (done) | time=143ms
     INFO: Property 'sonar.jdbc.url' is not supported any more. It will be ignored. There is no longer any DB connection to the SQ database.
     INFO: User cache: /Users/Max/.sonar/cache
     INFO: Load plugins index
     INFO: Load plugins index (done) | time=4ms
     INFO: Default locale: "fr_FR", source code encoding: "UTF-8" (analysis  is platform dependent)
     INFO: Process project properties
     INFO: ------------------------------------------------------------------------
     INFO: EXECUTION FAILURE
     INFO: ------------------------------------------------------------------------
     INFO: Total time: 1.631s
     INFO: Final Memory: 40M/194M
     INFO: ------------------------------------------------------------------------
     ERROR: Error during SonarQube Scanner execution
     ERROR: Unable to load component class org.sonar.batch.scan.ProjectLock
     ERROR: Caused by: Unable to load component class     org.sonar.api.batch.bootstrap.ProjectReactor
     ERROR: Caused by: You must define the following mandatory properties for 'Unknown': sonar.projectKey, sonar.projectName, sonar.projectVersion, sonar.sources
     ERROR: 
     ERROR: To see the full stack trace of the errors, re-run SonarQube  Scanner with the -e switch.
     ERROR: Re-run SonarQube Scanner using the -X switch to enable full debug logging.
  • 我正在java项目文件夹中运行sonar-runner
  • 我已经在java项目中放置并配置了sonar-runner.properties

    sonar.projectKey=SeleniumMaven:sonar
    sonar.projectName=SeleniumMaven
    sonar.projectVersion=1.0
    sonar.sources=src
    sonar.sourceEncoding=UTF-8
    sonar.language=java
    

有什么想法吗


共 (3) 个答案

  1. # 1 楼答案

    尝试按如下方式传递值:

    sonar-runner -Dsonar.projectKey=..... -Dsonar.projectName=...

    如果有效,则表示属性文件被忽略

    如果您看到以下消息:

    INFO: Scanner configuration file: /Users/Max/Documents/sonar-scanner-2.5/conf/sonar-runner.properties
    INFO: Project configuration file: NONE
    

    看起来您的项目配置文件确实被忽略了

  2. # 2 楼答案

    您需要在项目的根目录中创建一个configuration filesonar项目。属性

    如果一个声纳项目。无法在项目的根目录中创建属性文件,或者您将无法创建该文件,其中有several alternatives

    • 可以通过命令行直接指定属性。例:

      声纳扫描仪-Dsonar。projectKey=myproject-Dsonar。来源=src1

    • 房地产项目。设置可用于指定到的路径 项目配置文件(此选项与 项目家庭和声纳。projectBaseDir属性)。例:

      声纳扫描仪-D项目。设置=/我的项目。属性

    要分析的项目的根文件夹可以通过sonar设置。projectBaseDir自SonarQube Scanner 2.4(以前是project.home)以来的属性。此文件夹必须包含声纳项目。属性文件,如果命令行上未指定必需的属性(如sonar.projectKey

    Additional analysis parameters可以在此项目配置文件中或通过命令行参数定义

  3. # 3 楼答案

    我也遇到了同样的问题,我意识到我的文件名不正确:不是“sonar project.properties”,而是“sonar project.properties.properties”

    我会尝试将您的文件名更改为“sonar project.properties”,然后尝试