2017-04-18 89 views
3

我試圖在新的Spring Boot App中使用WebFlux反應類型。我使用了https://start.spring.io的initializr並選擇了2.0.0-SNAPSHOT版本。我添加了Web響應依賴項,並且我所做的所有工作都很棒。這是一個非常可靠的POC,目標是如何利用這些類型來實現我們API的現代化,爲此,我們計劃慢慢地替換阻塞和/或同步過程的每個部分,並將其替換爲非阻塞替代實現。在嵌入式Tomcat中使用Spring Boot Weblfux

我遇到的問題是,當我嘗試將我的POC發展成更類似於我們在生產中的服務時,許多事情看起來並不奏效。現在我明白webflux還不是GA,而且我不應該期望所有其他春季項目都能提供充分的反應支持。不過我記得webflux仍然被稱爲web-reactive,你可以在undertow/jetty/netty/tomcat/etc上運行,但現在我使用webflux starter,一切默認爲netty,並且我沒有看到文檔調用瞭解如何將其更改爲我們其他服務當前使用的嵌入式tomcat。

是否仍然可以將spring-boot-starter-webflux與其他應用程序容器一起使用,或者現在是否需要手動引導webflux以使用netty以外的其他功能?

回答

4

您可以從spring-boot-starter-webflux依賴關係中排除spring-boot-starter-reactor-netty,並使用spring-boot-starter-tomcatspring-boot-starter-undertowspring-boot-starter-jetty代替。

+0

這仍然有效嗎?我最終會丟失類,例如'引發:java.lang.NoClassDefFoundError:io/netty/buffer/Unpooled' –

+0

應該是。你可以在https://github.com/spring-projects/spring-boot/issues上用完整的堆棧跟蹤創建一個問題嗎? –

+0

參見:https://github.com/spring-projects/spring-boot/issues/9689 –

相關問題