2017-05-05 6 views
1

이 솔루션을 내 컴퓨터에 로컬로 배포 한 다음 프로덕션 서버에 배포 한 지 일주일이 지났습니다.
그러나, 나는 많은 어려움과 몰이해에 직면, 그게 내가 한 일입니다 통해Sonar + Jenkins 작업 실행 오류

  • 수중 음파 탐지기 설치 apt-get을하고 로컬 호스트의 포트 9000에 출시.
  • apt-get을 통해 Jenkins를 설치하고 localhost의 포트 8080에서 실행합니다.
  • Jenkins 용 Sonar 플러그인을 다운로드하십시오.

    ERROR: Error during SonarQube Scanner execution org.sonarqube.ws.client.HttpException: 
    

    전체 오류 스택은 다음과 같습니다 :

    ERROR: Error during SonarQube Scanner execution 
    org.sonarqube.ws.client.HttpException: Error 500 on http:/localhost:9000/api/ce/submit?projectKey=sonar.org:projectname&projectName=devops : {"errors":[{"msg":"An error has occurred. Please contact your administrator"}]} 
        at org.sonarqube.ws.client.BaseResponse.failIfNotSuccessful(BaseResponse.java:36) 
        at org.sonar.scanner.bootstrap.ScannerWsClient.failIfUnauthorized(ScannerWsClient.java:106) 
        at org.sonar.scanner.bootstrap.ScannerWsClient.call(ScannerWsClient.java:75) 
        at org.sonar.scanner.report.ReportPublisher.upload(ReportPublisher.java:177) 
        at org.sonar.scanner.report.ReportPublisher.execute(ReportPublisher.java:131) 
        at org.sonar.scanner.phases.PublishPhaseExecutor.publishReportJob(PublishPhaseExecutor.java:72) 
        at org.sonar.scanner.phases.PublishPhaseExecutor.executeOnRoot(PublishPhaseExecutor.java:54) 
        at org.sonar.scanner.phases.AbstractPhaseExecutor.execute(AbstractPhaseExecutor.java:83) 
        at org.sonar.scanner.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:175) 
        at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:143) 
        at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:128) 
        at org.sonar.scanner.scan.ProjectScanContainer.scan(ProjectScanContainer.java:262) 
        at org.sonar.scanner.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:257) 
        at org.sonar.scanner.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:247) 
        at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:143) 
        at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:128) 
        at org.sonar.scanner.task.ScanTask.execute(ScanTask.java:47) 
        at org.sonar.scanner.task.TaskContainer.doAfterStart(TaskContainer.java:86) 
        at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:143) 
        at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:128) 
        at org.sonar.scanner.bootstrap.GlobalContainer.executeTask(GlobalContainer.java:118) 
        at org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:117) 
        at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:63) 
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
        at java.lang.reflect.Method.invoke(Method.java:498) 
        at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60) 
        at com.sun.proxy.$Proxy0.execute(Unknown Source) 
        at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:233) 
        at org.sonarsource.scanner.api.EmbeddedScanner.runAnalysis(EmbeddedScanner.java:151) 
        at org.sonarsource.scanner.cli.Main.runAnalysis(Main.java:123) 
        at org.sonarsource.scanner.cli.Main.execute(Main.java:77) 
        at org.sonarsource.scanner.cli.Main.main(Main.java:61) 
    
        http://localhost:9000/api/ce/submit?projectKey=sonar.org:projectname&projectName=devops 
        : {"errors":[{"msg":"An error has occurred. Please contact your administrator"}]} 
    

    내가 그 본 SonarQube 로그를 검색 할 때 다음과 같은 이유로

작업을 실행하려고하면, 그것은 실패

2017.05.02 23:35:25 ERROR web[AVvKZ3JA+DB4lMWaAACV][o.s.s.w.WebServiceEngine] Fail to process 
request http:/localhost:9000/api/qualityprofiles/restore 
java.lang.IllegalStateException: Can't read file part at 
org.sonar.server.ws.ServletRequest.readPart(ServletRequest.java:102) 
... 
Caused by: java.io.IOException: The temporary upload location [/root/Documents/sonarqube-6.3.1/temp/tc/work/Tomcat/localhost/ROOT] is not valid 

답변

0

"The temporary upload location is not valid"에서 볼 수 있듯이 폴더에

  • /root/Documents/sonarqube-6.3.1/temp/tc/work/Tomcat/localhost/ROOT는 수중 음파 탐지기를 실행하는 사용자가
  • 인 775 존재한다. (seen here 등)

또는 당신은

JVM_OPTIONS="-Xrs -Xms256m -Xmx512m -Djava.io.tmpdir=/opt/another/tmp" 

가 예로 this threadthis thread를 참조하십시오 다른 위치에 임시 폴더를 정의 할 수 있습니다.

+0

사실 컴퓨터에는이 유형의 폴더가 없습니다. A는 이미이 링크들을보고 있지만, 나는 그들을 이해하지 못했습니다. 죄송합니다. – Fosfor

+0

@Fosfor -Djava.io.tmpdir =을 가지고 당신의 Sonar를 시작하고 쓰기가 가능한 빈 폴더를 설정하십시오. – VonC

+0

좋아, 고마워 너와 나는 그것을 바꿨지 만 폴더에 관해서는 "/root/Documents/sonarqube-6.3.1/temp/tc/work/Tomcat/localhost/ROOT"그것은 존재하지 않고, 그 문제를 해결하는 방법을 안다. – Fosfor

관련 문제