簡體   English   中英

聲納分析導致0個文件通過Jenkins在Maven項目上建立索引

[英]Sonar analysis causes 0 files indexed on a maven project through Jenkins

我正在嘗試通過Jenkins將標准Maven項目與SonarQube集成。 SonarQube已添加到項目構建中的構建后操作。

我可以看到在構建的控制台輸出中正確調用了Sonar,但是找不到任何要索引的文件。 據我所知,Sonar分析已成功完成,但報告為空。

針對本地SonarQube安裝,從命令行在本地運行的同一命令可以正常運行。

  • 詹金斯:1.605
  • 聲納:5.1(與Jenkins在同一台計算機上運行,​​位於MySQL數據庫之外)
  • Jenkins Maven插件:2.8
  • Jenkins SonarQube插件:2.2

我在Jenkins->使用服務器URL和DB URL配置Jenkins部分中添加了SonarQube部分。

生成操作后項目中SonarQube附加屬性上唯一的配置參數是-Dsonar.scm.disabled = true,我相信它會關閉未提交的文件檢查。

[sonarcore] $ /usr/share/apache-maven/bin/mvn -f /var/lib/jenkins/workspace/sonarcore/myproject-core/pom.xml -e -B sonar:sonar -Dsonar.scm.disabled=true -Dsonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?autoReconnect=true&useUnicode=true&characterEncoding=utf8 -Dsonar.host.url=http://localhost:9000/
    [INFO] Error stacktraces are turned on.
    [INFO] Scanning for projects...
    [INFO]                                                                         
    [INFO] ------------------------------------------------------------------------
    [INFO] Building myproject-core 0.0.1-SNAPSHOT
    [INFO] ------------------------------------------------------------------------
    [INFO] 
    [INFO] --- sonar-maven-plugin:2.5:sonar (default-cli) @ myproject-core ---
    [INFO] SonarQube version: 5.1
    INFO: Default locale: "en_US", source code encoding: "UTF-8"
    INFO: Work directory: /var/lib/jenkins/workspace/sonarcore/myproject-core/target/sonar
    INFO: SonarQube Server 5.1
    [INFO] [10:23:00.144] Load global repositories
    [INFO] [10:23:00.327] Load global repositories (done) | time=185ms
    [INFO] [10:23:00.336] Server id: 20150413092802
    [INFO] [10:23:00.338] User cache: /var/lib/jenkins/.sonar/cache
    [INFO] [10:23:00.353] Install plugins
    [INFO] [10:23:00.409] Install JDBC driver
    [INFO] [10:23:00.422] Create JDBC datasource for jdbc:mysql://localhost:3306/sonar?autoReconnect=true&useUnicode=true&characterEncoding=utf8
    [INFO] [10:23:01.722] Initializing Hibernate
    [INFO] [10:23:03.174] Load project repositories
    [INFO] [10:23:03.198] Load project repositories (done) | time=24ms
    [INFO] [10:23:03.198] Load project settings
    [INFO] [10:23:03.424] Load technical debt model
    [INFO] [10:23:03.447] Apply project exclusions
    [INFO] [10:23:03.647] -------------  Scan myproject-core
    [INFO] [10:23:03.651] Load module settings
    [INFO] [10:23:03.758] Load rules
    [INFO] [10:23:03.826] Base dir: /var/lib/jenkins/workspace/sonarcore/myproject-core
    [INFO] [10:23:03.826] Working dir: /var/lib/jenkins/workspace/sonarcore/myproject-core/target/sonar
    [INFO] [10:23:03.827] Source paths: pom.xml, src/main/java
    [INFO] [10:23:03.827] Test paths: src/test/java
    [INFO] [10:23:03.827] Binary dirs: target/classes
    [INFO] [10:23:03.828] Source encoding: UTF-8, default locale: en_US
    [INFO] [10:23:03.828] Index files
    [INFO] [10:23:03.853] 0 files indexed
    [INFO] [10:23:03.894] Sensor Lines Sensor
    [INFO] [10:23:03.895] Sensor Lines Sensor (done) | time=1ms
    [INFO] [10:23:03.896] Sensor QProfileSensor

我在SO上找到了另一個類似的線程,該線程說我需要安裝更多插件,但是我無法找到我需要哪些插件。

使用SonarQube進行分析會導致0個文件建立索引並且沒有報告(Maven Project)

我還沒有在Jenkins上添加SonarQube Runner,因為我認為這不是必需的。 請在這里查看https://stackoverflow.com/a/13473275/4473028

在您的服務器中:

您需要在服務器上安裝Sonar運行程序,並且需要正確設置變量SONAR_RUNNER_HOME

在您的詹金斯配置中:

您需要像這樣設置sonarQube掃描儀的配置: 全局工具配置中的聲納配置

安裝插件后,您將能夠在作業配置中將其配置為執行步驟。

在您的作業配置中:

您需要指示sonar-project.properties文件的路徑以及之前在步驟中已經配置的sonnar-runner實例,如下所示: sonar步驟配置

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM