3 回答

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

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

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