前面的项目,我们会发现有个接口是一样的,我们需要单独抽取出来,统一维护;
以及两个项目的maven依赖包的版本也是一样的,我们也需要单独抽取出来,统一维护;
抽取接口,我们通过新建一个项目,然后其他两个项目依赖这个这个项目即可;
统一依赖包版本,我们可以通过建立parent项目,来统一管理依赖以及版本,子项目继承即可;
我们新建dubbo-demo-api项目,然后把DemoProviderService接口类放到该项目里即可;
我们再新建一个dubbo-demo-parent项目;
pom.xml里:
4.0.0
com.java1234
dubbo-demo-parent
0.0.1-SNAPSHOT
pom
0.0.1-SNAPSHOT
2.6.0
0.10
4.0.1
1.2.46
1.2.17
1.7.25
3.4
4.0.35.Final
com.java1234
dubbo-demo-api
${dubbo-demo-api.version}
com.alibaba
dubbo
${dubbo.version}
com.101tec
zkclient
${zkclient.version}
org.apache.curator
curator-framework
${curator-framework.version}
com.alibaba
fastjson
${fastjson.version}
log4j
log4j
${log4j.version}
org.slf4j
slf4j-api
${slf4j-api.version}
org.apache.commons
commons-lang3
${commons-lang3.version}
io.netty
netty-all
${netty-all.version}
dubbo-demo-provider项目pom.xml修改:
4.0.0
com.java1234
dubbo-demo-parent
0.0.1-SNAPSHOT
dubbo-demo-provider
com.java1234
dubbo-demo-api
com.alibaba
dubbo
com.101tec
zkclient
org.apache.curator
curator-framework
com.alibaba
fastjson
log4j
log4j
org.slf4j
slf4j-api
org.apache.commons
commons-lang3
io.netty
netty-all
类似,dubbo-demo-consumer项目pom.xml修改:
4.0.0
com.java1234
dubbo-demo-parent
0.0.1-SNAPSHOT
dubbo-demo-consumer
com.java1234
dubbo-demo-api
com.alibaba
dubbo
com.101tec
zkclient
org.apache.curator
curator-framework
com.alibaba
fastjson
log4j
log4j
org.slf4j
slf4j-api
org.apache.commons
commons-lang3
io.netty
netty-all
测试结果OK;