无论我如何设置我的项目,我在启动时都会得到以下异常:
“检测到不支持的挂起处理程序方法”。
我正在尝试使用https://docs.spring.io/spring/docs/5.2.0.BUILD-SNAPSHOT/spring-framework-reference/languages.html#coroutines中描述的对协程的支持。
这是我的gradle设置(缩写)。我如何摆脱这个异常?
ext.kotlin_version = '1.3.70'
ext.kotlin_coroutines_core = '1.3.5'
ext.kotlin_coroutines_reactor = '1.3.5'
ext.spring_boot_version = '2.2.6.RELEASE'
ext.springfox_version='2.9.2'
ext.jackson_module_kotlin = '2.10.3'
...
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_core"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-reactor:$kotlin_coroutines_reactor"
implementation "org.springframework.boot:spring-boot-starter-webflux:$spring_boot_version"
implementation "com.fasterxml.jackson.module:jackson-module-kotlin:$jackson_module_kotlin"
implementation "net.rakugakibox.spring.boot:logback-access-spring-boot-starter:2.7.1"
implementation "net.logstash.logback:logstash-logback-encoder:5.3"
implementation "org.springframework.boot:spring-boot-starter-actuator:$spring_boot_version"
implementation "io.micrometer:micrometer-registry-statsd:1.1.4"
implementation "io.springfox:springfox-swagger2:$springfox_version"发布于 2020-10-28 23:30:11
这可能是因为当类路径中同时有Spring MVC和Spring时,Spring Boot使用Spring MVC服务器,因为Spring WebFlux还包含可以与这两个服务器一起使用的WebClient。
当您使用带有依赖项(这里是springfox-swagger2)的spring-boot-starter-webflux时,通常会发生这种情况,该依赖项会在类路径中传递地引入Spring MVC。
在您的application.properties (或application.yml的等价物)中设置spring.main.web-application-type=reactive将强制使用WebFlux服务器,并可能避免此问题。
请注意,Spring MVC也支持协程(使用内部MVC异步支持),从Spring Framework 5.3和Spring Boot2.4开始,所以在这些版本中,您将不会出现此错误,但您将使用Spring MVC而不是Spring WebFlux,这可能不是您想要的。因此,即使使用Spring Boot 2.4+,如果您希望使用Spring MVC并传递Spring MVC的依赖关系,也应该设置spring.main.web-application-type=reactive。
发布于 2020-04-06 01:28:27
我在这里有几个小时都有同样的问题。
我解决这个问题的方法是不使用@RequestMapping注释。
移除该注释并将@RequestMapping值向下移动时,@GetMapping和@PostMappings等就会起作用。无论如何,这都不是一个好的解决方案,但这是我到目前为止唯一找到的一个。
这个问题似乎来自Spring MVC在挂起函数的代码中添加了一个检查,我猜这是与WebFlux共享的:https://github.com/spring-projects/spring-framework/issues/23585
https://stackoverflow.com/questions/61032704
复制相似问题