3 回答

TA貢獻1725條經驗 獲得超8個贊
在您的 Spring Boot 啟動類中,@EnableAutoConfiguration注釋將自動配置 MVC 部分(WebMvcAutoConfiguration由于相同的 bean 名稱將失敗DelegatingWebFluxConfiguration)
所以嘗試像這樣從自動配置中排除它:
@SpringBootApplication
@EnableAutoConfiguration(exclude = {WebMvcAutoConfiguration.class })
public static void main(String[] args) {
...
SpringApplication.run(MyApp.class, args);
}

TA貢獻1850條經驗 獲得超11個贊
如您的問題描述中所述,在 Spring Webflux 中使用 Spring MVC 的依賴項可能會導致此問題。我通過排除組“org.springframework.boot”同時包含舊的依賴項解決了這個問題。
在 gradle.build 我做了類似下面的事情:
implementation("dependency-using-spring-mvc") { exclude(group= "org.springframework.boot") }

TA貢獻1852條經驗 獲得超1個贊
如果我理解正確,你在類路徑上有一些與 Web 相關的依賴項,但沒有構建 Web 應用程序,你可以明確地告訴SpringApplication
你不需要 Web 應用程序:
app.setWebEnvironment(false);
這是禁用與 Web 相關的自動配置的方法,因為這意味著您不需要知道那些自動配置類是什么,讓 Spring Boot 為您處理。
添加回答
舉報