由于连接超时,无法访问 SonarQube Eclipse 插件 3.4 Sonar 服务器
SonarQube Eclipse plugin 3.4 Sonar server can not be reached because of connection time out
我已经在 RAD 9 (Eclipse 4.2) 上安装了 SonarQube Eclipse 插件 3.4
我已经提供了服务器 URL (SonarQube server 4.5.4) 并测试了连接...一切正常。
当我将我的项目关联到 SonarQube 时,项目被识别但是当它开始检索远程问题时(点击分析后)我得到这个异常:
Retrieve remote issues of project myProject...
Start SonarQube analysis on myProject...
ERROR: Sonar server 'https://sonarServer/sonar' can not be reached
Exception in thread "main" org.sonar.runner.kevinsawicki.HttpRequest$HttpRequestException: java.net.ConnectException: Connection timed out: connect
at org.sonar.runner.kevinsawicki.HttpRequest.code(HttpRequest.java:1392)
at org.sonar.runner.kevinsawicki.HttpRequest.ok(HttpRequest.java:1417)
at org.sonar.runner.impl.ServerConnection.downloadString(ServerConnection.java:90)
at org.sonar.runner.impl.ServerVersion.downloadVersion(ServerVersion.java:48)
at org.sonar.runner.impl.ServerVersion.version(ServerVersion.java:39)
at org.sonar.runner.impl.ServerVersion.is35Compatible(ServerVersion.java:63)
at org.sonar.runner.impl.JarDownloader.download(JarDownloader.java:39)
at org.sonar.runner.impl.BatchLauncher.run(BatchLauncher.java:71)
at java.security.AccessController.doPrivileged(AccessController.java:274)
at org.sonar.runner.impl.BatchLauncher.doExecute(BatchLauncher.java:69)
at org.sonar.runner.impl.BatchLauncher.execute(BatchLauncher.java:50)
at org.sonar.runner.impl.BatchLauncherMain.execute(BatchLauncherMain.java:41)
at org.sonar.runner.impl.BatchLauncherMain.main(BatchLauncherMain.java:59)
Caused by: java.net.ConnectException: Connection timed out: connect
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:68)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:529)
at sun.net.www.protocol.http.HttpURLConnection.run(HttpURLConnection.java:1674)
at sun.net.www.protocol.http.HttpURLConnection.run(HttpURLConnection.java:1672)
at java.security.AccessController.doPrivileged(AccessController.java:330)
at sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1670)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1243)
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:468)
at com.ibm.net.ssl.www2.protocol.https.b.getResponseCode(b.java:27)
at org.sonar.runner.kevinsawicki.HttpRequest.code(HttpRequest.java:1390)
... 12 more
Caused by: java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:358)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:219)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:201)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:180)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:616)
at com.ibm.jsse2.qc.connect(qc.java:46)
at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:395)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:490)
at com.ibm.net.ssl.www2.protocol.https.c.<init>(c.java:179)
at com.ibm.net.ssl.www2.protocol.https.c.a(c.java:172)
at com.ibm.net.ssl.www2.protocol.https.d.getNewHttpClient(d.java:21)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:931)
at com.ibm.net.ssl.www2.protocol.https.d.connect(d.java:62)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1299)
at sun.net.www.protocol.http.HttpURLConnection.getHeaderField(HttpURLConnection.java:2677)
at com.ibm.net.ssl.www2.protocol.https.b.getHeaderField(b.java:35)
at org.sonar.runner.kevinsawicki.HttpRequest.header(HttpRequest.java:1903)
at org.sonar.runner.kevinsawicki.HttpRequest.contentType(HttpRequest.java:2308)
at org.sonar.runner.impl.ServerConnection.downloadString(ServerConnection.java:86)
... 10 more
编辑
这是服务器 access.log
127.0.0.1 - - [03/01/2016:10:26:58 +0200] "GET /sonar/api/server/index HTTP/1.1" 200 55 "-" "Apache-HttpClient/4.2.2 (java 1.5)"
127.0.0.1 - - [03/01/2016:10:27:05 +0200] "GET /sonar/api/authentication/validate HTTP/1.1" 200 14 "-" "Apache-HttpClient/4.2.2 (java 1.5)"
127.0.0.1 - - [03/01/2016:10:27:16 +0200] "GET /sonar/api/server/index HTTP/1.1" 200 55 "-" "Apache-HttpClient/4.2.2 (java 1.5)"
127.0.0.1 - - [03/01/2016:10:27:55 +0200] "GET /sonar/api/resources?resource=com.myproject%3Amymodule%3ASNAPSHOT&verbose=false& HTTP/1.1" 200 306 "-" "Apache-HttpClient/4.2.2 (java 1.5)"
127.0.0.1 - - [03/01/2016:10:28:04 +0200] "GET /sonar/api/issues/search?resolved=false&pageSize=-1&componentRoots=com.myproject:mymodule:SNAPSHOT&pageIndex=1 HTTP/1.1" 200 - "-" "Java/1.7.0"
127.0.0.1 - - [03/01/2016:10:28:09 +0200] "GET /sonar/api/issues/search?resolved=false&pageSize=-1&componentRoots=com.myproject:mymodule:SNAPSHOT&pageIndex=2 HTTP/1.1" 200 - "-" "Java/1.7.0"
127.0.0.1 - - [03/01/2016:10:28:13 +0200] "GET /sonar/api/issues/search?resolved=false&pageSize=-1&componentRoots=com.myproject:mymodule:SNAPSHOT&pageIndex=3 HTTP/1.1" 200 - "-" "Java/1.7.0"
127.0.0.1 - - [03/01/2016:10:28:17 +0200] "GET /sonar/api/issues/search?resolved=false&pageSize=-1&componentRoots=com.myproject:mymodule:SNAPSHOT&pageIndex=4 HTTP/1.1" 200 - "-" "Java/1.7.0"
127.0.0.1 - - [03/01/2016:10:28:21 +0200] "GET /sonar/api/issues/search?resolved=false&pageSize=-1&componentRoots=com.myproject:mymodule:SNAPSHOT&pageIndex=5 HTTP/1.1" 200 - "-" "Java/1.7.0"
127.0.0.1 - - [03/01/2016:10:28:24 +0200] "GET /sonar/api/issues/search?resolved=false&pageSize=-1&componentRoots=com.myproject:mymodule:SNAPSHOT&pageIndex=6 HTTP/1.1" 200 - "-" "Java/1.7.0"
127.0.0.1 - - [03/01/2016:10:28:36 +0200] "GET /sonar/api/resources?resource=com.myproject%3Amymodule%3ASNAPSHOT&metrics=&verbose=false& HTTP/1.1" 200 306 "-" "Apache-HttpClient/4.2.2 (java 1.5)"
sonar.log 文件中没有显示任何内容
编辑结束
有时会检索到问题的一部分,有时则没有
谢谢
我发现使用 eclipse 启动分析时会执行以下命令:
java.exe -cp C:\Users\xxxx\AppData\Local\Temp\sonar-runner-impl6867841822221012221.jar
org.sonar.runner.impl.BatchLauncherMain
C:\Users\xxxx\AppData\Local\Temp\sonar-project3666940761827968492.properties
因为我在 eclipse 网络首选项部分配置的代理后面工作,除非添加代理配置,否则它将无法访问服务器。
所以为了测试我已经执行了带有 https 代理配置选项的命令行(-Dhttps.proxyHost -Dhttps.proxyPort -Dhttps.proxyUser -Dhttps.proxyPassword)并且命令成功了。
我认为这是一个错误。在创建和启动命令之前,插件必须检查是否存在代理配置
编辑
要解决此问题,请转到首选项>>SonarQube>>JVM 参数进行预览分析:将代理参数放在该字段中,它应该可以工作
我已经在 RAD 9 (Eclipse 4.2) 上安装了 SonarQube Eclipse 插件 3.4 我已经提供了服务器 URL (SonarQube server 4.5.4) 并测试了连接...一切正常。
当我将我的项目关联到 SonarQube 时,项目被识别但是当它开始检索远程问题时(点击分析后)我得到这个异常:
Retrieve remote issues of project myProject...
Start SonarQube analysis on myProject...
ERROR: Sonar server 'https://sonarServer/sonar' can not be reached
Exception in thread "main" org.sonar.runner.kevinsawicki.HttpRequest$HttpRequestException: java.net.ConnectException: Connection timed out: connect
at org.sonar.runner.kevinsawicki.HttpRequest.code(HttpRequest.java:1392)
at org.sonar.runner.kevinsawicki.HttpRequest.ok(HttpRequest.java:1417)
at org.sonar.runner.impl.ServerConnection.downloadString(ServerConnection.java:90)
at org.sonar.runner.impl.ServerVersion.downloadVersion(ServerVersion.java:48)
at org.sonar.runner.impl.ServerVersion.version(ServerVersion.java:39)
at org.sonar.runner.impl.ServerVersion.is35Compatible(ServerVersion.java:63)
at org.sonar.runner.impl.JarDownloader.download(JarDownloader.java:39)
at org.sonar.runner.impl.BatchLauncher.run(BatchLauncher.java:71)
at java.security.AccessController.doPrivileged(AccessController.java:274)
at org.sonar.runner.impl.BatchLauncher.doExecute(BatchLauncher.java:69)
at org.sonar.runner.impl.BatchLauncher.execute(BatchLauncher.java:50)
at org.sonar.runner.impl.BatchLauncherMain.execute(BatchLauncherMain.java:41)
at org.sonar.runner.impl.BatchLauncherMain.main(BatchLauncherMain.java:59)
Caused by: java.net.ConnectException: Connection timed out: connect
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:68)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:529)
at sun.net.www.protocol.http.HttpURLConnection.run(HttpURLConnection.java:1674)
at sun.net.www.protocol.http.HttpURLConnection.run(HttpURLConnection.java:1672)
at java.security.AccessController.doPrivileged(AccessController.java:330)
at sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1670)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1243)
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:468)
at com.ibm.net.ssl.www2.protocol.https.b.getResponseCode(b.java:27)
at org.sonar.runner.kevinsawicki.HttpRequest.code(HttpRequest.java:1390)
... 12 more
Caused by: java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:358)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:219)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:201)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:180)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:616)
at com.ibm.jsse2.qc.connect(qc.java:46)
at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:395)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:490)
at com.ibm.net.ssl.www2.protocol.https.c.<init>(c.java:179)
at com.ibm.net.ssl.www2.protocol.https.c.a(c.java:172)
at com.ibm.net.ssl.www2.protocol.https.d.getNewHttpClient(d.java:21)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:931)
at com.ibm.net.ssl.www2.protocol.https.d.connect(d.java:62)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1299)
at sun.net.www.protocol.http.HttpURLConnection.getHeaderField(HttpURLConnection.java:2677)
at com.ibm.net.ssl.www2.protocol.https.b.getHeaderField(b.java:35)
at org.sonar.runner.kevinsawicki.HttpRequest.header(HttpRequest.java:1903)
at org.sonar.runner.kevinsawicki.HttpRequest.contentType(HttpRequest.java:2308)
at org.sonar.runner.impl.ServerConnection.downloadString(ServerConnection.java:86)
... 10 more
编辑 这是服务器 access.log
127.0.0.1 - - [03/01/2016:10:26:58 +0200] "GET /sonar/api/server/index HTTP/1.1" 200 55 "-" "Apache-HttpClient/4.2.2 (java 1.5)"
127.0.0.1 - - [03/01/2016:10:27:05 +0200] "GET /sonar/api/authentication/validate HTTP/1.1" 200 14 "-" "Apache-HttpClient/4.2.2 (java 1.5)"
127.0.0.1 - - [03/01/2016:10:27:16 +0200] "GET /sonar/api/server/index HTTP/1.1" 200 55 "-" "Apache-HttpClient/4.2.2 (java 1.5)"
127.0.0.1 - - [03/01/2016:10:27:55 +0200] "GET /sonar/api/resources?resource=com.myproject%3Amymodule%3ASNAPSHOT&verbose=false& HTTP/1.1" 200 306 "-" "Apache-HttpClient/4.2.2 (java 1.5)"
127.0.0.1 - - [03/01/2016:10:28:04 +0200] "GET /sonar/api/issues/search?resolved=false&pageSize=-1&componentRoots=com.myproject:mymodule:SNAPSHOT&pageIndex=1 HTTP/1.1" 200 - "-" "Java/1.7.0"
127.0.0.1 - - [03/01/2016:10:28:09 +0200] "GET /sonar/api/issues/search?resolved=false&pageSize=-1&componentRoots=com.myproject:mymodule:SNAPSHOT&pageIndex=2 HTTP/1.1" 200 - "-" "Java/1.7.0"
127.0.0.1 - - [03/01/2016:10:28:13 +0200] "GET /sonar/api/issues/search?resolved=false&pageSize=-1&componentRoots=com.myproject:mymodule:SNAPSHOT&pageIndex=3 HTTP/1.1" 200 - "-" "Java/1.7.0"
127.0.0.1 - - [03/01/2016:10:28:17 +0200] "GET /sonar/api/issues/search?resolved=false&pageSize=-1&componentRoots=com.myproject:mymodule:SNAPSHOT&pageIndex=4 HTTP/1.1" 200 - "-" "Java/1.7.0"
127.0.0.1 - - [03/01/2016:10:28:21 +0200] "GET /sonar/api/issues/search?resolved=false&pageSize=-1&componentRoots=com.myproject:mymodule:SNAPSHOT&pageIndex=5 HTTP/1.1" 200 - "-" "Java/1.7.0"
127.0.0.1 - - [03/01/2016:10:28:24 +0200] "GET /sonar/api/issues/search?resolved=false&pageSize=-1&componentRoots=com.myproject:mymodule:SNAPSHOT&pageIndex=6 HTTP/1.1" 200 - "-" "Java/1.7.0"
127.0.0.1 - - [03/01/2016:10:28:36 +0200] "GET /sonar/api/resources?resource=com.myproject%3Amymodule%3ASNAPSHOT&metrics=&verbose=false& HTTP/1.1" 200 306 "-" "Apache-HttpClient/4.2.2 (java 1.5)"
sonar.log 文件中没有显示任何内容
编辑结束
有时会检索到问题的一部分,有时则没有
谢谢
我发现使用 eclipse 启动分析时会执行以下命令:
java.exe -cp C:\Users\xxxx\AppData\Local\Temp\sonar-runner-impl6867841822221012221.jar
org.sonar.runner.impl.BatchLauncherMain
C:\Users\xxxx\AppData\Local\Temp\sonar-project3666940761827968492.properties
因为我在 eclipse 网络首选项部分配置的代理后面工作,除非添加代理配置,否则它将无法访问服务器。 所以为了测试我已经执行了带有 https 代理配置选项的命令行(-Dhttps.proxyHost -Dhttps.proxyPort -Dhttps.proxyUser -Dhttps.proxyPassword)并且命令成功了。
我认为这是一个错误。在创建和启动命令之前,插件必须检查是否存在代理配置
编辑
要解决此问题,请转到首选项>>SonarQube>>JVM 参数进行预览分析:将代理参数放在该字段中,它应该可以工作