Микронавт ленточка эврика конфликт конфликта - PullRequest
0 голосов
/ 21 мая 2019

Я изучаю основы Micronaut.Мой файл gradle.build

dependencies {
annotationProcessor "io.micronaut:micronaut-inject-java"
annotationProcessor "io.micronaut:micronaut-validation"
compile "io.micronaut:micronaut-http-client"
compile "io.micronaut:micronaut-inject"
compile "io.micronaut:micronaut-validation"
compile "io.micronaut:micronaut-runtime"
compile "io.micronaut:micronaut-http-server-netty"
compile "javax.annotation:javax.annotation-api"
runtime "ch.qos.logback:logback-classic:1.2.3"
runtime "io.micronaut:micronaut-discovery-client"
testAnnotationProcessor "io.micronaut:micronaut-inject-java"
testCompile "org.junit.jupiter:junit-jupiter-api"
testCompile "io.micronaut.test:micronaut-test-junit5"
testRuntime "org.junit.jupiter:junit-jupiter-engine"

}

Но запуск программы завершается неудачно с зависимостью

compile "io.micronaut.configuration:micronaut-netflix-ribbon"

Я получаю сообщение об ошибке:

21:39:30.792 [main] ERROR io.micronaut.runtime.Micronaut - Error starting Micronaut server: Unable to start Micronaut server on port: 8090
io.micronaut.http.server.exceptions.ServerStartupException: Unable to start Micronaut server on port: 8090
    at io.micronaut.http.server.netty.NettyHttpServer.bindServerToHost(NettyHttpServer.java:438)
    at io.micronaut.http.server.netty.NettyHttpServer.start(NettyHttpServer.java:310)
    at io.micronaut.http.server.netty.NettyHttpServer.start(NettyHttpServer.java:95)
    at io.micronaut.runtime.Micronaut.lambda$start$2(Micronaut.java:75)
    at java.base/java.util.Optional.ifPresent(Optional.java:183)
    at io.micronaut.runtime.Micronaut.start(Micronaut.java:73)
    at io.micronaut.runtime.Micronaut.run(Micronaut.java:288)
    at io.micronaut.runtime.Micronaut.run(Micronaut.java:274)
    at dev.ivanov.Application.main(Application.java:8)
Caused by: java.lang.NoSuchMethodError: io.reactivex.internal.subscriptions.SubscriptionHelper.isCancelled(Lorg/reactivestreams/Subscription;)Z

Micronautне можете работать с Эврикой и Лентой вместе?

1 Ответ

0 голосов
/ 22 мая 2019

Ваша трассировка стека, которую вы разместили, не является полной трассировкой стека, поскольку она не показывает фактическую причину ошибки, поэтому невозможно сказать, какой фрагмент кода использует метод

Это выглядит как несовместимость версий RxJava2. К сожалению, команда RxJava решила разрешить критическое изменение в выпуске точек: https://github.com/ReactiveX/RxJava/pull/6263

Micronaut поставляется с RxJava2 2.2.6, в котором есть критические изменения.

Итак, варианты:

  1. Отправьте запрос ребятам RxJava, чтобы отменить последние изменения
  2. Отправьте запрос пользователям Netflix для обновления их версии
  3. Попробуйте принудительно понизить версию RxJava2 до 2.2.3. ext."rxjava2.version" = "2.2.3" для Gradle, например
...