Sonar Maven Plugin : 3.2 : generating wrong URL to download libraries... after updating SonarQube 5.6.1 to 6.2

1,471 views
Skip to first unread message

lau...@chardin.org

unread,
Jan 2, 2017, 8:41:33 AM1/2/17
to SonarQube
Hello everyone,

I have a recent issue with Sonar Maven Pluging which is not unable to download libraries from an updated SonarQube server 5.6.1 to 6.2.
I am using sonar-maven-plugin-3.2

Here is a trace - (i have change the domain and the project name to xxx) :

[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar (default-cli) on project xxx: Unable to execute SonarQube: Fail to download libraries from server: Status returned by url [https://xxx/batch/file?name=sonar-scanner-engine-shaded-6.2.jar?name=sonar-scanner-engine-shaded-6.2.jar] is not valid: [400] -> [Help 1]
org
.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar (default-cli) on project xxx: Unable to execute SonarQube
 at org
.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
 at org
.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
 at org
.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
 at org
.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
 at org
.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
 at org
.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
 at org
.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
 at org
.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
 at org
.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
 at org
.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
 at org
.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
 at org
.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
 at org
.apache.maven.cli.MavenCli.main(MavenCli.java:199)
 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
.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
 at org
.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
 at org
.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
 at org
.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Unable to execute SonarQube
 at org
.sonarsource.scanner.maven.bootstrap.ExceptionHandling.handle(ExceptionHandling.java:36)
 at org
.sonarsource.scanner.maven.bootstrap.ScannerBootstrapper.execute(ScannerBootstrapper.java:81)
 at org
.sonarsource.scanner.maven.SonarQubeMojo.execute(SonarQubeMojo.java:122)
 at org
.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
 at org
.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
 
... 20 more
Caused by: org.sonarsource.scanner.api.internal.ScannerException: Unable to execute SonarQube
 at org
.sonarsource.scanner.api.internal.IsolatedLauncherFactory$1.run(IsolatedLauncherFactory.java:84)
 at org
.sonarsource.scanner.api.internal.IsolatedLauncherFactory$1.run(IsolatedLauncherFactory.java:71)
 at java
.security.AccessController.doPrivileged(Native Method)
 at org
.sonarsource.scanner.api.internal.IsolatedLauncherFactory.createLauncher(IsolatedLauncherFactory.java:71)
 at org
.sonarsource.scanner.api.internal.IsolatedLauncherFactory.createLauncher(IsolatedLauncherFactory.java:67)
 at org
.sonarsource.scanner.api.EmbeddedScanner.doStart(EmbeddedScanner.java:218)
 at org
.sonarsource.scanner.api.EmbeddedScanner.start(EmbeddedScanner.java:156)
 at org
.sonarsource.scanner.maven.bootstrap.ScannerBootstrapper.execute(ScannerBootstrapper.java:60)
 
... 23 more
Caused by: java.lang.IllegalStateException: Fail to download libraries from server
 at org
.sonarsource.scanner.api.internal.Jars.downloadFiles(Jars.java:93)
 at org
.sonarsource.scanner.api.internal.Jars.download(Jars.java:70)
 at org
.sonarsource.scanner.api.internal.JarDownloader.download(JarDownloader.java:39)
 at org
.sonarsource.scanner.api.internal.IsolatedLauncherFactory$1.run(IsolatedLauncherFactory.java:75)
 
... 30 more
Caused by: java.lang.IllegalStateException: Status returned by url [https://xxx/batch/file?name=sonar-scanner-engine-shaded-6.2.jar?name=sonar-scanner-engine-shaded-6.2.jar] is not valid: [400]
 at org
.sonarsource.scanner.api.internal.ServerConnection.callUrl(ServerConnection.java:115)
 at org
.sonarsource.scanner.api.internal.ServerConnection.downloadFile(ServerConnection.java:78)
 at org
.sonarsource.scanner.api.internal.Jars$BatchFileDownloader.download(Jars.java:106)
 at org
.sonarsource.scanner.api.internal.cache.FileCache.download(FileCache.java:97)
 at org
.sonarsource.scanner.api.internal.cache.FileCache.get(FileCache.java:83)
 at org
.sonarsource.scanner.api.internal.Jars.downloadFiles(Jars.java:88)
 
... 33 more
[ERROR]
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException


The plugin seems to generate a wrong URL:
Caused by: java.lang.IllegalStateException: Status returned by url [https://xxx/batch/file?name=sonar-scanner-engine-shaded-6.2.jar?name=sonar-scanner-engine-shaded-6.2.jar] is not valid: [400]

The current content for https://xxx/batch/index is:
sonar-scanner-engine-shaded-6.2.jar|3b542c2e8a06b1abb186b4687130b4d4

Does the format changed with 6.2 that would lead the maven plugin unable to download the libraries ?

Thanks,

Laurent
Message has been deleted
Message has been deleted

lau...@chardin.org

unread,
Jan 2, 2017, 9:57:30 AM1/2/17
to SonarQube, lau...@chardin.org
Here is a sample of the SQ web logs:


2017.01.02 13:37:50 ERROR web[][o.s.s.p.w.RootFilter] Processing of request /batch/file?name=sonar-scanner-engine-shaded-6.2.jar?name=sonar-scanner-engine-shaded-6.2.jar failed
org.sonar.api.utils.text.WriterException: Fail to write JSON
	at org.sonar.api.utils.text.JsonWriter.rethrow(JsonWriter.java:391)
	at org.sonar.api.utils.text.JsonWriter.close(JsonWriter.java:386)
	at org.sonar.server.ws.WebServiceEngine.sendErrors(WebServiceEngine.java:157)
	at org.sonar.server.ws.WebServiceEngine.execute(WebServiceEngine.java:110)
	at org.sonar.server.ws.WebServiceFilter.doFilter(WebServiceFilter.java:74)
	at org.sonar.server.platform.web.MasterServletFilter$GodFilterChain.doFilter(MasterServletFilter.java:126)
	at org.sonar.server.platform.web.MasterServletFilter.doFilter(MasterServletFilter.java:95)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
	at org.sonar.server.user.UserSessionFilter.doFilter(UserSessionFilter.java:83)
	at org.sonar.server.user.UserSessionFilter.doFilter(UserSessionFilter.java:66)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
	at org.sonar.server.platform.web.SecurityServletFilter.doHttpFilter(SecurityServletFilter.java:73)
	at org.sonar.server.platform.web.SecurityServletFilter.doFilter(SecurityServletFilter.java:49)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
	at org.sonar.server.platform.web.RoutesFilter.doFilter(RoutesFilter.java:55)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
	at org.sonar.server.platform.web.requestid.RequestIdFilter.doFilter(RequestIdFilter.java:63)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
	at org.sonar.server.platform.web.RootFilter.doFilter(RootFilter.java:62)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
	at ch.qos.logback.access.tomcat.LogbackValve.invoke(LogbackValve.java:256)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.IOException: Incomplete document
	at org.sonar.api.internal.google.gson.stream.JsonWriter.close(JsonWriter.java:527)
	at org.sonar.api.utils.text.JsonWriter.close(JsonWriter.java:384)
	... 39 common frames omitted

lau...@chardin.org

unread,
Jan 2, 2017, 10:01:32 AM1/2/17
to SonarQube, lau...@chardin.org

Also, using the following URL works fine : https://xxx/batch/file?name=sonar-scanner-engine-shaded-6.2.jar



Le lundi 2 janvier 2017 14:41:33 UTC+1, lau...@chardin.org a écrit :

lau...@chardin.org

unread,
Jan 3, 2017, 2:21:01 PM1/3/17
to SonarQube, lau...@chardin.org
Finally spotted the culpit : an old nginx rewrite rule which was bogus !

^^


Le lundi 2 janvier 2017 14:41:33 UTC+1, lau...@chardin.org a écrit :

G. Ann Campbell

unread,
Jan 3, 2017, 2:30:59 PM1/3/17
to SonarQube, lau...@chardin.org
Thanks for the followup to let us know this is solved.


Ann
Reply all
Reply to author
Forward
0 new messages