SAXParseException: schema_reference.4:Spring 加载找不到XSD文件,从源头分析

当Spring程序报错SAXParseException,无法找到XSD文件时,问题可能出在xsd版本错误或maven打包问题。理解Spring加载bean配置文件的原理至关重要。检查/META-INF/spring.schemas文件,确保xsd版本正确且jar包无冲突。maven打包时可配置transformer以避免此类问题。
摘要由CSDN通过智能技术生成

Spring 加载找不到XSD文件

阅读引导

1、由点破面,了解Spring加载bean配置文件的原理。

2、Spring暴露出来的扩展spring schema。

3、为自己工作,为自己的系统工作,做自己的老板,形成正循环:打磨当前工作的核心关键能力——>高效能工作——>更多时间打磨自己的系统——>更高效能工作——>打磨下个层次工作的核心关键能力……

4、核心竞争力,是指你拥有的(独特的)知识经验组合,经过你思维逻辑的组织梳理,在实践中产生无可替代的价值。打造自己的TMS系统(T:专业技术;M:沟通管理、S:行业解决方案),利用复利效应,让系统为自己工作。

开发Spring程序时报错:

org.xml.sax.SAXParseException: schema_reference.4: 无法读取方案文档 ‘http://www.springframework.org/schema/beans/spring-beans.xsd’, 原因为 1) 无法找到文档; 2) 无法读取文档; 3) 文档的根元素不是 xsd:schema。

有两种可能:

1、声明中指定错了xsd版本。

2、maven打包出问题。

这个问题,不要靠经验,不要靠猜测,要了解spring加载的原理:

spring程序,去压缩包(jar\war等)文件夹中 /META-INF/spring.schemas 找对应的xsd,如果找不到再去互联网找此xsd

所以,再出现这个问题,直接打开文件spring.schemas搜索。

如果版本不对就修改版本。

如果里面是空的,甚至不包含xsd,但是jar包又确实引用了,那么说明有多个版本spring的jar包,然后冲突了。

打包的maven插件可以配置如下,主要增加对于spring的transformer配置。

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.1</</
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值