Spring Boot:dubbo配置踩坑

在尝试使用Spring Boot集成Dubbo时遇到配置问题,由于阿里巴巴的dubbo.xsd地址已关闭,从GitHub下载并本地引用未能解决问题。经过一系列尝试,包括更换为Apache Dubbo版本、添加相关依赖(如CuratorFrameworkFactory、)后,最终成功运行,但对新增依赖的具体作用仍需进一步研究。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天写在写dubbo demo的时候,发现无法解析dubbo-provider.xml里面的配置,原因是找不到dubbo.xsd。

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    	http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
    	http://code.alibabatech.com/schema/dubbo
    	http://code.alibabatech.com/schema/dubbo/dubbo.xsd">
    ...
</beans>

搜了一下发现是http://code.alibabatech.com/schema/dubbo这个域名已经关闭了,网上的做法是到github上下载dubbo.xsd到本地,然后在ide中进行关联,我也照着做了。但是发现还是找不到dubbo.xsd,似乎本地配置没有生效。

网上还有一些其他的说法,比如没有导入jar包、jar包版本不对之类的,我导入的dubbo版本是maven仓库中最新的,但是我也不能验证到底哪个版本才正确。

搜了半天也没解决问题,后来上apache网站上直接复制xml开头:

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    	http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
    	http://dubbo.apache.org/schema/dubbo
    	http://dubbo.apache.org/schema/dubbo/dubbo.xsd">

发现这上面的地址就不是用阿里巴巴的地址了,相应的,我就把maven中的依赖换成了apache版本的dubbo:

<dependency>
	<groupId>org.apache.dubbo</groupId>
    <artifactId>dubbo</artifactId>
    <version>2.7.3</version>
</dependency>

再运行,还是报错,说找不到CuratorFrameworkFactory

Caused by: java.lang.ClassNotFoundException: org.apache.curator.framework.CuratorFrameworkFactory

原因是没有添加curator-framework依赖,加上(虽然不知道干嘛用的,还没来得及看,好像是跟zookeeper相关的):

<dependency>
	<groupId>org.apache.curator</groupId>
	<artifactId>curator-framework</artifactId>
	<version>4.2.0</version>
</dependency>

再运行,又报错。。

Caused by: java.lang.ClassNotFoundException: org.apache.curator.framework.recipes.cache.TreeCacheListener

好吧,还是跟curator有关的依赖,叫curator-recipes,也加上:

<dependency>
	<groupId>org.apache.curator</groupId>
    <artifactId>curator-recipes</artifactId>
    <version>4.2.0</version>
</dependency>

最后终于跑起来了,后面还得研究一下这两个依赖的作用是啥。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值