Многомодульный проект gradle: невозможно выполнять вызовы других методов модуля - PullRequest
0 голосов
/ 08 мая 2020

My Multi-ModuleProjectStructure looks like this

Мой файл setting.gradle выглядит так

rootProject.name = 'MainProject'
include 'ModuleA'
include 'ModuleB'
include 'ModuleC'

MainProject build.gradle выглядит так

 plugins {
   ................
}

subprojects {
    group = 'com.example'
    version = '0.0.1-SNAPSHOT'

    apply plugin: "java"

    apply plugin: 'java-library'

    repositories {
        mavenCentral()
        jcenter()       
    }

    configurations {
        compileOnly {
            extendsFrom annotationProcessor
        }
    }

    dependencies {
       ...........
    }

    dependencyManagement {
        imports {  
        .............
        }
    }

    compileJava {
        sourceCompatibility = 1.8
        targetCompatibility = 1.8
    }

    tasks.withType(JavaCompile) {
        options.encoding = 'UTF-8'
    }
}

ModuleA build.gradle похож на

dependencies {
    .............
    compile(":ModuleB")
    compile(":ModuleC")
}

ModuleB build.gradle

dependencies {
    .............
}

Module c build.gradle

dependencies {
    .............
}

Итак, ModuleA зависит от ModuleB Мое требование похоже на тестовый класс ModuleA, я хочу использовать класс ModuleB для создания объекта и вызова методов ModuleB. Так же, как и интеграционное тестирование.

Проблема, с которой я столкнулся, похожа на невозможность импортировать классы ModuleB и Module C в ModuleA и создать объект для вызова их методов. Даже после выполнения чистой сборки на уровне проекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...