创建两个工程,一个是nacos-provider, 另一个是naocos-consumer;
添加nacos-provider的依赖
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.13.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> <version>2.1.2.RELEASE</version> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>2.1.2.RELEASE</version> </dependency> </dependencies> <!--SpringCloud的依赖--> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Greenwich.SR5</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
添加nacos-consumer依赖
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.3.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> <version>2.1.2.RELEASE</version> </dependency> </dependencies> <!--SpringCloud的依赖--> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Greenwich.SR5</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
- provider基本代码
@RestController
public class ProviderController {
@GetMapping("invoke")
public String invoke() {
return LocalTime.now() + " invoke;
}
}
application.yml
server:
port: 8070
spring:
application:
name: nacos-provider
cloud:
# nacos服务地址
nacos:
server-addr: 127.0.0.1:8848
在启动类上添加@EnableDiscoveryClient注解
- consumer基本代码
@RestController
public class ConsummerController {
@Autowired
private ProviderFeign providerFeign;
@GetMapping("/test")
public String test() {
return providerFeign.invoke();
}
}
@FeignClient("nacos-provider")
public interface ProviderFeign {
@GetMapping("invoke")
String invoke();
}
application.yml
server:
port: 8071
spring:
application:
name: nacos-consumer
cloud:
# nacos服务地址
nacos:
server-addr: 127.0.0.1:8848
在启动类添加@EnableFeignClients,@EnableDiscoveryClient注解

调用结果:

文档:https://github.com/alibaba/spring-cloud-alibaba/wiki/Nacos-discovery