我遵循 Spring Tips: Spring Cloud Gateway。但是我的網(wǎng)關(guān)應(yīng)用程序不會從服務(wù)注冊(尤里卡)創(chuàng)建路由。帶有 2 個參數(shù)的 DiscoveryClientRouteDefinitionLocator 構(gòu)造函數(shù)。它不是從 Eureka 服務(wù)器路由的網(wǎng)關(guān)應(yīng)用程序。我一直在嘗試更改 pom.xml 中的版本,但我使用的是 RELEASE。該Application.java@SpringBootApplicationpublic class GatewayApplication { @Bean DiscoveryClientRouteDefinitionLocator discoveryRoutes(DiscoveryClient dc, DiscoveryLocatorProperties dlp) { return new DiscoveryClientRouteDefinitionLocator(dc, dlp); } public static void main(String[] args) { SpringApplication.run(GatewayApplication.class, args); }}DiscoveryClientRouteDefinitionLocator 的構(gòu)造函數(shù)現(xiàn)在使用 2 個參數(shù),而不是像 Spring Tips: Spring Clou Gateway 中的 1 個參數(shù)。該application.property:spring.application.name=gatewayserver.port=8081eureka.client.register-with-eureka=true我的pom.xml:<?xml version="1.0" encoding="UTF-8"?><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/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion><groupId>com.hcl.cnp</groupId><artifactId>gateway</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>gateway</name><description>Demo project for Spring Boot</description><parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.3.RELEASE</version> <relativePath/> <!-- lookup parent from repository --></parent><properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> <spring-cloud.version>Finchley.RELEASE</spring-cloud.version></properties><dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency>
2 回答

臨摹微笑
TA貢獻(xiàn)1982條經(jīng)驗 獲得超2個贊
構(gòu)造函數(shù)DiscoveryClientRouteDefinitionLocator (DiscoveryClient, DiscoveryLocatorProperties) 已棄用
我建議你使用:
ReactiveDiscoveryClient代替DiscoveryClient
@Bean
DiscoveryClientRouteDefinitionLocator discoveryRoutes(ReactiveDiscoveryClient rdc,
DiscoveryLocatorProperties dlp) {
return new DiscoveryClientRouteDefinitionLocator(rdc, dlp);
}
其他的事情,你應(yīng)該將你的application.proporty重命名為application.properities
添加回答
舉報
0/150
提交
取消