Tomcat Sonar 3.7 XML配置文件XHTML验证失败

Tomcat Sonar 3.7 XML配置文件XHTML验证失败,tomcat,proxy,jenkins,xhtml,sonarqube,Tomcat,Proxy,Jenkins,Xhtml,Sonarqube,我正在尝试将SonarWeb和XML质量的概要分析添加到我稳定的Java概要分析套件中。Sonar XML质量配置文件分析无法完成XHTML验证。我怀疑问题在于,由于代理问题,验证引擎无法通过internet访问XML模式 错误: [INFO] [11:48:07.587] Sensor XmlSourceImporter... [INFO] [11:48:23.354] Sensor XmlSourceImporter done: 15767 ms [INFO] [11:48:23.354]

我正在尝试将SonarWeb和XML质量的概要分析添加到我稳定的Java概要分析套件中。Sonar XML质量配置文件分析无法完成XHTML验证。我怀疑问题在于,由于代理问题,验证引擎无法通过internet访问XML模式

错误:

[INFO] [11:48:07.587] Sensor XmlSourceImporter...
[INFO] [11:48:23.354] Sensor XmlSourceImporter done: 15767 ms
[INFO] [11:48:23.354] Sensor XmlSensor...
[INFO] [11:48:23.557] Validate Exit.xhtml with schema xhtml1-transitional
[ERROR] [11:48:44.542] Could not analyze the file D:\Jenkins_home\.jenkins\jobs\...\Exit.xhtml
org.sonar.api.utils.SonarException: java.net.ConnectException: Connection timed out: connect
    at org.sonar.plugins.xml.checks.XmlSchemaCheck.validate(XmlSchemaCheck.java:248) ~[na:na]
    at org.sonar.plugins.xml.checks.XmlSchemaCheck.validate(XmlSchemaCheck.java:227) ~[na:na]
    at org.sonar.plugins.xml.checks.XmlSchemaCheck.validate(XmlSchemaCheck.java:259) ~[na:na]
    at org.sonar.plugins.xml.XmlSensor.analyse(XmlSensor.java:69) ~[na:na]
    at org.sonar.batch.phases.SensorsExecutor.execute(SensorsExecutor.java:72) [sonar-batch-3.7.1.jar:na]
配置:

  • Tomcat 7.0.11,Jenkins 1.509.3和Sonar 3.7.1安装在Windows Server 2003上的Tomcat中
  • 插件版本:Sonar XML版本1.0,Jenkins Sonar版本2.1,Jenkins Subversion 1.50
  • Jenkins Maven 2.2.1触发声纳分析的作业
  • 所有web访问都由代理服务器(公司配置)保护
  • Sonar在conf/Sonar.properties中配置了代理服务器属性(证明:能够访问Sonar更新中心-如果Tomcat代理交换机配置为允许代理访问,请参见下文)
  • Tomcat Java进程配置了空的-Dhttp.proxyHost和-Dhttp.proxyPort开关,以禁止从Windows传递代理设置。这是必需的,所以代理信息不会传递给Jenkins(如果代理开关从Tomcat传递,Jenkins Subversion访问将失败)
我想我遇到了第22个难题,我需要Tomcat来抑制代理设置,这样Jenkins Subversion访问才能工作,但需要Tomcat代理设置才能进行Sonar XML分析。也许我需要放弃Tomcat而支持Jenkins和Sonar的独立安装


我的代理设置分析正确吗?或者我可以尝试使用另一种Sonar配置来进行XHTML验证吗?

我通过配置Jenkins使用的Maven安装来使用代理连接到网络,从而解决了这个问题。参考文献:。在Maven代理配置中,我在
中添加了intranet URI(
*..*

conf/Sonar.properties中的Sonar代理服务器属性不是必需的

现在,Jenkins和Sonar通过Tomcat启动,没有代理设置(即空的
-Dhttp.proxyHost
-Dhttp.proxyPort
开关)。当Jenkins作业通过Maven触发Sonar分析时,Maven能够在执行XML模式验证检查时通过代理配置调用internet