我正在尝试使用 Spring Cloud Gateway 做一个示例,用于 JWT 身份验证和 URL 路由目的。
当我作为 JAVA 应用程序运行或使用嵌入式 Tomcat 容器时,一切运行良好,但当将其作为 War 部署到 Tomcat 服务器时,我会出现以下依赖项注入错误。
应用程序无法启动
描述:
org.springframework.cloud.gateway.config.GatewayAutoConfiguration 中的方法routeDefinitionRouteLocator 的参数4 需要一个类型为“org.springframework.core.convert.ConversionService”的bean,但无法找到。
注入点有以下注释: - @org.springframework.beans.factory.annotation.Qualifier(value=webFluxConversionService)
行动:
考虑在配置中定义“org.springframework.core.convert.ConversionService”类型的 bean。
我尝试添加与 Spring Web Flux 相关的 jar,但错误没有消失
我的 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>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.gateway</groupId>
<artifactId>gateway</artifactId>
<version>1.0</version>
<packaging>war</packaging>
<name>gateway</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Greenwich.SR2</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId> …Run Code Online (Sandbox Code Playgroud)