在父项目pom.xml中添加:
<properties> <spring-cloud.version>Hoxton.RELEASE</spring-cloud.version> <spring-cloud-alibaba.version>2.2.0.RELEASE</spring-cloud-alibaba.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>${spring-cloud-alibaba.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>子项目引入Nacos
还是以user子模块为例,在user子模块的pom.xml中添加:
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> <version>0.2.2.RELEASE</version> </dependency> <dependency> <groupId>com.alibaba.nacos</groupId> <artifactId>nacos-client</artifactId> </dependency>这里存在一个问题,spring-cloud-starter-alibaba-nacos-discovery需要指定版本,否则无法导入,没有查找为什么版本和SpringCloud Alibaba版本不一致。
2.2、服务注册在模块启动类中添加注解 @EnableDiscoveryClient开启服务注册发现功能
@SpringBootApplication @MapperScan("cn.fighter3.mapper") @EnableDiscoveryClient public class EshopUserApplication { public static void main(String[] args) { SpringApplication.run(EshopUserApplication.class, args); } }在配置文件application.yml中添加服务名称和Nacos Server地址
spring: application: name: user-service cloud: nacos: discovery: server-addr: 127.0.0.1:8848更多配置可以查看:Nacos discovery
启动项目,通过Nacos控制台查看,发现用户服务已经注册到了Nacos Server。
我们可以参考第五章,和上面的内容,完善其它几个业务子模块,将其它几个业务模块服务也注册到Nacos注册中心。这里略去这一部分的内容,给大家看最后的效果:
好了,服务注册已经完成,在下一章我们会接着学习服务如何远程调用,请持续关注……
"简单的事情重复做,重复的事情认真做,认真的事情有创造性地做!"——
我是三分恶,可以叫我老三/三分/三哥/三子,一个能文能武的全栈开发,咱们下期见!
参考:
【1】:小专栏《SpringCloudAlibaba微服务实战 》
【2】:Nacos Spring Cloud 快速开始
【3】:Spring Cloud 系列之 Alibaba Nacos 注册中心(一)
【4】:Nacos discovery