Gradle не исключая указанный файл

Я добавил exclude заявление, но все еще мое исключение abc/object/MyTestConfig*.class добавляются в банку, по какой причине?

jar {
  zip64 true

  from((configurations.compile - configurations.jarDepends).collect { it.isDirectory() ? it : zipTree(it) }) {
    exclude "META-INF/*.SF"
    exclude "META-INF/*.DSA"
    exclude "META-INF/*.RSA"
  }
  from ("$projectDir/src/main/java/") {
    include "**/*.hbm.xml", 
            "abc/tools/xml/XMLClasses.MF"
    exclude "abc/object/MyTestConfig*.class"
  }
}

task filterVersionConstants(type: Copy) {
  from "src/main/java/abc/"
  into "src/main/java/abc/"
  include "VersionConstants.tmpl"
  exclude "**/MyTestConfig*.class"
  rename { String fileName -> 
      fileName.replace('.tmpl', '.java')
}

2 ответа

Решение

После нескольких проб и ошибок, наконец, я могу исключить этот файл из моей банки, как показано ниже. В основном мне нужно вытащить исключить заявление в jar Задача на первое.

jar {
  zip64 true
  exclude "abc/object/MyTestConfig*.class"

  from((configurations.compile - configurations.jarDepends).collect { it.isDirectory() ? it : zipTree(it) }) {
    exclude "META-INF/*.SF"
    exclude "META-INF/*.DSA"
    exclude "META-INF/*.RSA"
  }
  from ("$projectDir/src/main/java/") {
    include "**/*.hbm.xml", 
            "abc/tools/xml/XMLClasses.MF"
  }
}

Вы пытаетесь исключить файл класса из исходного каталога, но там находятся только ваши Java(исходные) файлы. Вы пытаетесь предотвратить создание класса или просто не упаковывать его? Исключите файл Java, чтобы предотвратить его сборку, или исключите файл класса из выходного каталога, а не из исходного каталога.

Другие вопросы по тегам