Java9モジュールエラー:モジュール名を決定することはできません、無名のモジュールを読み込みパッケージとモジュールorg.reactivestreamsは両方からパッケージを読み込みます

Gスリアリ:

私は、3種類のエラーを取得しています。

  1. モジュール名を決定できません。..
  2. 無名のモジュールは、パッケージを読み込みます。..
  3. モジュールorg.reactivestreamsは両方からパッケージを読み込みます。..

まさにこれらのエラー?

build.gradle

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-webflux'
    testImplementation('org.springframework.boot:spring-boot-starter-test') {
     exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
     exclude group: 'org.mockito', module: 'mockito-core'
    }

    testImplementation 'io.projectreactor:reactor-test'
    testImplementation 'org.springframework.restdocs:spring-restdocs-webtestclient'


    compile("io.github.resilience4j:resilience4j-spring-boot2:1.3.1") {
     exclude group: 'org.mockito', module: 'mockito-core'
     }
   compile("io.github.resilience4j:resilience4j-reactor:1.3.1") {
     exclude group: 'org.mockito', module: 'mockito-core'
   }
   compile('org.springframework.boot:spring-boot-starter-aop')
   compile('org.springframework.boot:spring-boot-starter-actuator')
   compile group: 'com.google.code.gson', name: 'gson', version: '2.8.6'
}

エラーメッセージ:

タスク:compileJava

エラー:/Users/srihariprasad/.gradle/caches/modules-2/files-2.1/io.github.resilience4j/resilience4j-framework-common/1.3.1/8c16dda86fad3c9251930cad21ac87aa34cd8035/resilience4j-framework-common-1.3用のモジュール名を判断できません.1.jar

エラー:無名のモジュールはresilience4j.spring.boot.commonとio.github.resilience4j.springboot2の両方からパッケージio.github.resilience4j.timelimiter.autoconfigureを読み込み

エラー:無名のモジュールはresilience4j.spring.boot.commonとio.github.resilience4j.springboot2の両方からパッケージio.github.resilience4j.retry.autoconfigureを読み込み

エラー:無名のモジュールはresilience4j.spring.boot.commonとio.github.resilience4j.springboot2エラーの両方からパッケージio.github.resilience4j.ratelimiter.autoconfigureを読み込む:無名のモジュールからパッケージio.github.resilience4j.circuitbreaker.autoconfigureを読み込みresilience4j.spring.boot.commonとio.github.resilience4j.springboot2エラーの両方:無名のモジュールはresilience4j.spring.boot.commonとio.github.resilience4j.springboot2の両方からパッケージio.github.resilience4j.bulkhead.autoconfigureを読み込み

エラー:モジュールorg.reactivestreamsはresilience4j.spring.boot.commonとio.github.resilience4j.springboot2の両方からパッケージio.github.resilience4j.timelimiter.autoconfigureを読み込み

どのように我々はそれらを除外するために、どのjarファイルからこれら二つのモジュールを見つけることができます。1.resilience4j.spring.boot.common、2 io.github.resilience4j.springboot2。1.3.1:私の理解あたりとして、私はresilience4jスプリング-BOOT2からのjarファイルを除外する必要があります。しかし、私はそれを行う方法を理解していませんか?

ロバート・ウィンクラー:

無名のモジュールによってエクスポートされたパッケージは、別の無名のモジュールで読み取ることができます。無名のモジュールという名前のモジュールを読み込むことができるということはできません(必要)。 http://tutorials.jenkov.com/java/modules.html#unnamed-module

あなたは自動モジュールとしてResilience4jを使用しているが、分割されたパッケージを許可しない程度のルールは、自動モジュール用にカウントされます。複数のJARファイルは、同じJavaパッケージが含まれている(したがって、輸出)した場合、1つだけ、これらのJARファイルの自動モジュールとして使用することができます。私たちは、Resilience4jで、この分割されたパッケージの問題を修正する必要があります。アプリケーションを実行するときに、それまでは、Java VMに-classpath引数を使用することができます。クラスパス上にあなたがJavaの9の前にJavaは無名のモジュールと呼ぶものに含まれるクラスパス上にあるすべてのクラスを行っているだけのように、すべてのあなたの古いJavaクラスを含めることができます。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=14816&siteId=1
おすすめ