首先從https://github.com/alibaba/dubbo/archive/master.zip下載最新源碼,目前最新版本為2.5.4-SNAPSHOT。
我使用的是JDK 1.8.0_05, dubbo-admin版本是2.5.4-SNAPSHOT,也遇到了一樣的問題。解決方案:
修改 dubbo-admin的pom文件
1、webx的依賴改為3.1.6版;
<dependency>
<groupId>com.alibaba.citrus</groupId>
<artifactId>citrus-webx-all</artifactId>
<version>3.1.6</version>
</dependency>
2、添加velocity的依賴,我用了1.7;
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
</dependency>
3、對依賴項dubbo添加exclusion,避免引入舊spring
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>${project.parent.version}</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
</exclusion>
</exclusions>
</dependency>
4、webx已有spring 3以上的依賴,因此注釋掉dubbo-admin里面的spring依賴
<!--<dependency>-->
<!--<groupId>org.springframework</groupId>-->
<!--<artifactId>spring</artifactId>-->
<!--</dependency>-->
確定war包解壓后lib目錄沒有spring 3 以下的依賴就行。然后運行正常了。
dubbo源碼編譯
cd dubbo mvn clean install -Dmaven.test.skip
本文轉載至:https://github.com/alibaba/dubbo/issues/50