我有一个设置,其中我在目录a/b/c.java下有源文件srcA,在目录a/b/c.java下有一个具有相同名称srcB的文件。我想从a/b目录中排除此文件(或完整的srcB包),而仅从srcA目录中使用这些文件,但srcB必须是源集的一部分,因为它包含其他内容。

一个简短的示例,说明我目前如何配置(无法正常工作):

sourceSets {
  main {
    java {
        srcDir 'srcA'
        srcDir 'srcB'
        exclude 'srcB/a/b/**'
    }
  }
}

最佳答案

尝试使用exclude { it.file.absolutePath.startsWith("$projectDir/srcB/a/b/") }之类的东西(在Windows上使用反斜杠)。

09-04 23:07