支持jdk1.8的dubbo后台管理dubbo-admin-2.5.3.war包

度娘搜索了老久,下载都要币,木有找到免费下载的,没办法直接从github上下载的官方源码,修改下重新打包的,废话不多说直接上地址:https://pan.baidu.com/s/1R1cvN356EgBowkYAhKKYAA

密钥:brtr

链接已失效,请自行下载官网源码进行如下修改:

【问题概述】

    用dubbo-admin源码打成的war包,安装dubbo管理平台,部署到本机的tomcat遇到了问题,提示如下:

ERROR context.ContextLoader - Context initialization failed  
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'uriBrokerService': Cannot create inner bean '(inner bean)' of type [com.alibaba.citrus.service.uribroker.impl.URIBrokerServiceImpl$URIBrokerInfo] while setting bean property 'brokers' with key [0]; nested excepti  
on is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#25': Cannot create inner bean 'server' of type [com.alibaba.citrus.service.uribroker.uri.GenericURIBroker] while setting constructor argument; nested exception is org.springframework.beans.fact  
ory.BeanCreationException: Error creating bean with name 'server': Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'URIType' of bean class [com.alibaba.citrus.service.uribroker.uri.GenericURIBroker]: Bean property 'URIType'  
is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?  
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:230)  
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:122)  
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:287)

【解决方案】

在 git 上面下载 dubbo工程,git地址:https://github.com/alibaba/dubbo,里面包含很多项目,我们只需要用到 dubbo-admin 就可以了。

支持jdk1.8的dubbo后台管理dubbo-admin-2.5.3.war包_第1张图片

下载下来是这样的一个目录结构:

支持jdk1.8的dubbo后台管理dubbo-admin-2.5.3.war包_第2张图片

进入dubbo-admin这个文件目录,找到pom.xml文件:

修改webx的依赖改为3.1.6版:


        com.alibaba.citrus
        citrus-webx-all
        3.1.6

添加velocity的依赖,版本为1.7:


        org.apache.velocity
        velocity
        1.7

对依赖项dubbo添加exclusion,避免引入旧spring:


        com.alibaba
        dubbo
        ${project.parent.version}
        
            
                org.springframework
                spring
            
        

webx已有spring3以上的依赖,因此注释掉dubbo-admin里面的spring依赖:


        
        

重新打一个war包,部署OK

 

 

 

 

 

 

你可能感兴趣的:(dubbo)