无法阅读架构文档' http://www.springframework.org/schema/tool/spring-tool-4.1.xsd'

时间:2015-04-06 12:51:42

标签: java xml spring xsd

加载我的应用程序弹簧上下文时,我收到以下错误(仅在Linux机器上,在Windows上似乎以某种方式工作):

  

无法读取架构文档   ' http://www.springframework.org/schema/tool/spring-tool-4.1.xsd&#39 ;,   因为   1)找不到文件; 2)文件不可能   读; 3)文档的根元素不是xsd:schema。

Stacktrace如下:

org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from class path resource [META-INF/spring/score/context/scoreRepositoryContext.xml]
2015-03-30 11:07:49:336 127901 [main] WARN org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Ignored XML validation warning
org.xml.sax.SAXParseException; systemId: http://www.springframework.org/schema/tx/spring-tx.xsd; lineNumber: 12; columnNumber: 150; schema_reference.4: Failed to read schema document 'http://www.springframework.org/schema/tool/spring-tool-4.1.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not xsd:schema.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.warning(ErrorHandlerWrapper.java:99)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:433)
at 
...
at org.springframework.shell.Bootstrap.main(Bootstrap.java:58)
Caused by: java.net.ConnectException: Connection timed out
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)

知道为什么会这样吗?

1 个答案:

答案 0 :(得分:5)

问题几乎肯定是Spring库版本问题。

Update your Spring libraries on the Linux machine

  

确保没有任何冲突的罐子(不同的弹簧   类路径上的版本)。如果使用spring 3.0则应该没有   大胖spring.jar(春天2.5和之前)。接下来,如果你是   创建一个包含所有包的超级jar,确保你复制   xsd文件也。

[信用Marten Deinum(如上所述),Tristan和Michael Lee通过删除网络连接检查建议来改进此答案。]