<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.5.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <dependencyManagement> <dependencies> <!-- 声明Spring cloud的版本为Hoxton.SR3--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Hoxton.SR3</version> <type>pom</type> <scope>import</scope> </dependency> <!-- 声明Spring cloud alibaba版本为2.1.0.RELEASE --> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>2.2.1.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <!-- 声明nacos依赖 --> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> </dependencies>
注意:版本 2.1.x.RELEASE 对应的是 Spring Boot 2.1.x 版本。版本 2.0.x.RELEASE 对应的是 Spring Boot 2.0.x 版本,版本 1.5.x.RELEASE 对应的是 Spring Boot 1.5.x 版本。html
更多版本对应关系参考:版本说明 Wikigit
server.port=9001
spring.application.name=nacos-discovery-server
spring.application.cloud.nacos.discovery.server-addr=127.0.0.1:8848
(4)新建一个Controller,提供一个接口github
//SpringBoot主入口 @SpringBootApplication public class NacosDiscoveryServerApplication { public static void main(String[] args) { SpringApplication.run(NacosDiscoveryServerApplication.class, args); } } //接口 @RestController public class NacosDiscoveryController { @GetMapping("/nacos/discovery/hello") public String hello(@RequestParam String name) { return "hello, nacos discovery! " + name; } }
(5)启动服务,控制台打印如下内容,就说明注册成功了。 spring
2020-04-28 14:49:42.749 INFO 9864 --- [main] c.a.c.n.registry.NacosServiceRegistry:nacos registry, DEFAULT_GROUP nacos-discovery-server 192.168.9.114:9001 register finished
(6)打开nacos控制台,咱们能够在服务列表中发现咱们的服务了。markdown
注意事项:app
在SpringCloud E版本的时候,对服务注册进行了优化,在依赖了spring-cloud-starter-alibaba-nacos-discovery以后,默认会将服务注册到注册中心。
在配置文件中添加以下依赖便可:
spring.cloud.nacos.discovery.enabled=false