dubbo起步搭建Spring+SpringMVC+dubbo的开发环境(1,处理Spring冲突)

来源:互联网 发布:nero刻录软件怎样下载 编辑:程序博客网 时间:2024/05/18 03:15

打算自己做一些事情,需要实现分布式的系统,朋友的推荐下试用了一下dubbo,感觉能满足自己的要求。于是开始学习,这个文章作为记录。


dubbo官方的实例和网络上的例子,大多都是使用API启动。而根据我个人的使用需要,要搭建一个Spring+SpringMVC+dubbo的开发环境,并要使用spring自动加载。话不多说进入正题:

1,首先创建 提供者provider 和 消费者consumer 两个工程(分别是dp、dc)。

使用Eclipse创建Maven工程。

dp 的pom文件如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">  <modelVersion>4.0.0</modelVersion>  <groupId>com.xuyang</groupId>  <artifactId>dp</artifactId>  <version>0.0.1-SNAPSHOT</version>  <name>dp Maven Webapp</name>  <url>http://maven.apache.org</url>    <properties>   <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>    <!-- 设置 Spring 的版本 -->       <org.springframework.version>3.1.4.RELEASE</org.springframework.version>  </properties>    <dependencies>    <dependency>      <groupId>junit</groupId>      <artifactId>junit</artifactId>      <version>3.8.1</version>      <scope>test</scope>    </dependency>    <dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${org.springframework.version}</version></dependency><dependency>           <groupId>org.springframework</groupId>           <artifactId>spring-context-support</artifactId>           <version>${org.springframework.version}</version>     </dependency>     <dependency>         <groupId>org.springframework</groupId>         <artifactId>spring-web</artifactId>         <version>${org.springframework.version}</version>     </dependency>     <!-- dubbo start-->    <dependency>      <groupId>com.alibaba</groupId>      <artifactId>dubbo</artifactId>      <version>2.5.3</version>      <exclusions>      <exclusion>      <artifactId>spring</artifactId>      <groupId>org.springframework</groupId>      </exclusion>      </exclusions>    </dependency>    <dependency>      <groupId>org.apache.zookeeper</groupId>      <artifactId>zookeeper</artifactId>      <version>3.3.6</version>      <exclusions>        <exclusion>           <groupId>log4j</groupId>           <artifactId>log4j</artifactId>        </exclusion>      </exclusions>    </dependency>    <dependency>      <groupId>log4j</groupId>      <artifactId>log4j</artifactId>      <version>1.2.16</version>    </dependency>    <!-- dubbo end-->  </dependencies>  <build>    <finalName>dp</finalName>  </build>  <packaging>war</packaging></project>
问题

由于当前使用的spring版本是3.1,而dubbo使用的是spring是2.x;所以需要处理spring包冲突。方法如下:


找到dubbo依赖的spring2.5.6,右击使用maven--> Exclude Maven Artifact

效果参见 pom.xml

<dependency>      <groupId>com.alibaba</groupId>      <artifactId>dubbo</artifactId>      <version>2.5.3</version>      <exclusions>      <exclusion>      <artifactId>spring</artifactId>      <groupId>org.springframework</groupId>      </exclusion>      </exclusions>    </dependency>
查看工程中的 maven包引用:

已经没有spring2.5.6了。

4 0
原创粉丝点击