反转Gradle构建文件中的排除项

时间:2018-08-17 02:04:49

标签: gradle build.gradle gradlew

我在项目中创建了一个用于包装jar的新模块,build.gradle文件如下所示

apply from: "../common/spark/standard.gradle"


jar {
    manifest {
        attributes "Main-Class": "com.company.module.MyClass.main.Main"
    }
}

standard.gradle中,我正在运行一个shadowJob任务,看起来像这样

shadowJar {
    exclude "META-INF/*"
    exclude "AUTHORS"
    exclude "*LICENSE*"
    exclude "NOTICE"
    dependencies {
        exclude(dependency('org.slf4j:slf4j-log4j12:.*'))
        exclude(dependency('org.slf4j:.*:.*'))
    }
    append 'reference.conf'
    zip64 true
}

我遇到的问题是,我的模块中需要org.slf4j:slf4j-log4j12:.*,但是standard.gradle却将其排除在外。我的局限性在于我无法修改standard.gradle,因为它在共享库中。我尝试将compile "org.slf4j:slf4j-log4j12:.*"添加到我的dependencies中的build.gradle块中,但是gradle抱怨找不到它。我也曾尝试将apply语句移到dependencies块之后,但仍然找不到org.slf4j:slf4j-log4j12:.*

有没有办法使用gradle做到这一点?

0 个答案:

没有答案