java - Gradle在testRunTime期间排除本地jar

标签 java gradle build.gradle

我在这里遇到以下情况...我的Gradle jar目标需要javaee-api-*.jar作为compile时间

dependencies {

    compile fileTree(dir: '../lib', include: ['/**/javaee-api-*.jar'])

}
但是,在执行Gradle test时,我需要如下所示的dependencies ...
dependencies {

    compileOnly fileTree(dir: '../lib', include: ['/**/javaee-api-*.jar'])

}
testRunTime期间应如何排除 jar ?

最佳答案

我从javaee-api-*.jar过滤掉project.sourceSets.test.runtimeClasspath.filter添加了javaee-api-*.jar作为编译依赖项

dependencies {

    compile fileTree(dir: '../lib', include: ['/**/javaee-api-*.jar'])

}
   sourceSets {

      ....
    
    test {
        runtimeClasspath = project.sourceSets.test.runtimeClasspath.filter {
            !it.path.endsWith('oraclejavaee/javaee-api-6.0.jar')
        }
        java.srcDir project(':test-framework').file("src")
        resources.srcDirs project(':test-framework').file("config")
    }
  }

并在其中添加dependOn
test {
    dependsOn(testClasses)
    useTestNG() { //Tells Gradle to use TestNG
        useDefaultListeners = true // Tells TestNG to execute its default reporting structure
        suites 'test/testng.xml' //location of our suite.xml
    }
}

关于java - Gradle在testRunTime期间排除本地jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63447283/

相关文章:

java - java泛型方法声明的两种方式

java - 使用 Java 创建 Outlook 任务

java - Java Collections 中的插入顺序维护需求

android - Crashlytics NDK 符号和 Gradle 任务

android - 如何解决java.util.zip.ZipException duplicate entry : com/google/gson/annotations/Expose.类?

android - 具有外部依赖项定义的 Gradle DSL 中的关闭错误

java - 将 HashMap 与流一起使用时进行索引

android - 你如何调整 gradle 中 dex 内存的 jvm args?

android - 使用命令行重新同步 Gradle

gradle - 无法使用Gradle构建Git项目