環境:sonarqube8.4 community docker 部署
sonar-gitlab-plugin-4.1.0-SNAPSHOT.jar
gitlab runner sonarsource/sonar-scanner-cli:4
1.
java.lang.NullPointerException175 at com.talanlabs.sonar.plugins.gitlab.GitLabApiV4Wrapper.createOrUpdateSonarQubeStatus(GitLabApiV4Wrapper.java:211)176 at com.talanlabs.sonar.plugins.gitlab.CommitFacade.createOrUpdateSonarQubeStatus(CommitFacade.java:128)177 at com.talanlabs.sonar.plugins.gitlab.CommitPublishPostJob.execute(CommitPublishPostJob.java:112)178 at org.sonar.scanner.postjob.PostJobWrapper.execute(PostJobWrapper.java:49)179 at org.sonar.scanner.postjob.PostJobsExecutor.execute(PostJobsExecutor.java:48)180 at org.sonar.scanner.postjob.PostJobsExecutor.execute(PostJobsExecutor.java:39)181 at org.sonar.scanner.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:368)182 at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:137)183 at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:123)184 at org.sonar.scanner.bootstrap.GlobalContainer.doAfterStart(GlobalContainer.java:144)185 at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:137)186 at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:123)187 at org.sonar.batch.bootstrapper.Batch.doExecute(Batch.java:72)188 at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:66)189 at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:46)190 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)191 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)192 at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)193 at java.base/java.lang.reflect.Method.invoke(Unknown Source)194 at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60)195 at com.sun.proxy.$Proxy0.execute(Unknown Source)196 at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:189)197 at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:138)198 at org.sonarsource.scanner.cli.Main.execute(Main.java:112)199 at org.sonarsource.scanner.cli.Main.execute(Main.java:75)200 at org.sonarsource.scanner.cli.Main.main(Main.java:61)
這里未找到具體解決方案,我將sonar-gitlab-plugin卸載替換版本成4.0然后再替換回來(4.1)就不再出現這個問題
2.
com.talanlabs.gitlab.api.v4.GitLabAPIException: {"message":{"name":["has already been taken"]}}222 at com.talanlabs.gitlab.api.v4.http.GitLabHTTPRequestor.handleAPIError(GitLabHTTPRequestor.java:397)223 at com.talanlabs.gitlab.api.v4.http.GitLabHTTPRequestor.to(GitLabHTTPRequestor.java:144)224 at com.talanlabs.gitlab.api.v4.http.GitLabHTTPRequestor.to(GitLabHTTPRequestor.java:114)225 at com.talanlabs.gitlab.api.v4.services.GitLabAPICommits.postCommitStatus(GitLabAPICommits.java:162)226 at com.talanlabs.sonar.plugins.gitlab.GitLabApiV4Wrapper.createOrUpdateSonarQubeStatus(GitLabApiV4Wrapper.java:211)227 at com.talanlabs.sonar.plugins.gitlab.CommitFacade.createOrUpdateSonarQubeStatus(CommitFacade.java:128)228 at com.talanlabs.sonar.plugins.gitlab.CommitPublishPostJob.notificationCommitStatus(CommitPublishPostJob.java:161)229 at com.talanlabs.sonar.plugins.gitlab.CommitPublishPostJob.notification(CommitPublishPostJob.java:148)230 at com.talanlabs.sonar.plugins.gitlab.CommitPublishPostJob.execute(CommitPublishPostJob.java:101)231 at org.sonar.scanner.postjob.PostJobWrapper.execute(PostJobWrapper.java:49)232 at org.sonar.scanner.postjob.PostJobsExecutor.execute(PostJobsExecutor.java:48)233 at org.sonar.scanner.postjob.PostJobsExecutor.execute(PostJobsExecutor.java:39)234 at org.sonar.scanner.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:368)235 at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:137)236 at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:123)237 at org.sonar.scanner.bootstrap.GlobalContainer.doAfterStart(GlobalContainer.java:144)238 at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:137)239 at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:123)240 at org.sonar.batch.bootstrapper.Batch.doExecute(Batch.java:72)241 at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:66)242 at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:46)243 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)244 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)245 at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)246 at java.base/java.lang.reflect.Method.invoke(Unknown Source)247 at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60)248 at com.sun.proxy.$Proxy0.execute(Unknown Source)249 at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:189)250 at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:138)251 at org.sonarsource.scanner.cli.Main.execute(Main.java:112)252 at org.sonarsource.scanner.cli.Main.execute(Main.java:75)253 at org.sonarsource.scanner.cli.Main.main(Main.java:61)254 Caused by: java.io.IOException: Server returned HTTP response code: 400 for URL: http://188.6.32.77/api/v4/projects/3/statuses/ad4206f7d9c2ae204a5b0039b30d92fdd377b964255 at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)256 at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)257 at com.talanlabs.gitlab.api.v4.http.GitLabHTTPRequestor.parse(GitLabHTTPRequestor.java:355)258 at com.talanlabs.gitlab.api.v4.http.GitLabHTTPRequestor.to(GitLabHTTPRequestor.java:142)259 ... 30 common frames omitted
這個問題參考github,將gitlab-ci.yaml文件soanrqube的job名稱修改后就解決了該問題
stages: - build - analysis - test # - package # - deploy script: - dotnet build --interactive --source http://10.26.6.181:8081/repository/nuget-repo-group/ sonarqube:(-->修改為sonar-analysis
) variables: SONAR_TOKEN: "71df66b8e30dc18cb957d38d794a5b9d14e6a4cb" SONAR_HOST_URL: "http://your-sonarqube-instance.org" SONAR_USER_HOME: "${CI_PROJECT_DIR}/.sonar" # Defines the location of the analysis task cache GIT_DEPTH: 0 stage: analysis