Gradle:Jarに同じエントリが重複してしまうバグ



最新版で修正されているのかどうか不明だが、Gradle4.4.1ではこのバグがある。jarタスクでjarファイルを作成すると、エントリが重複してしまう。

再現サンプル

build.gradle

apply plugin: 'java'

sourceSets {  
  main {
    output.classesDir = 'bin'
    output.resourcesDir = 'bin' 
    java {
      srcDir 'src';
    }
    resources {
      srcDir 'src';
    }
  }
}

プログラムの中身は何でもよい。とりあえず以下のような構成だ。

「gradle jar」でjarファイルを作成すると、.classとgifリソースが重複して格納される。

これについての議論

こちらにある。

この時点では解決する気が無いらしい。現在解決されているかは不明である。

解決方法

先の議論にもあるが、以下を追加する。

jar {
    duplicatesStrategy= DuplicatesStrategy.EXCLUDE
}