次のようなプロジェクトレイアウトを想定します。
allprojects {
apply plugin: "java"
configurations {
provided
compile.extendsFrom(provided)
}
}
project("a") {
dependencies {
compile("foo:bar:1.0")
...
provided("bar:baz:3.14")
...
}
}
project("b") {
dependencies {
compile("abc:def:1.0")
...
provided("xyz:foo:3.14")
...
}
}
dependencies {
compile(project(":a"))
compile(project(":b"))
}
ここで、ルートプロジェクトのすべての依存関係を(推移的に)あるディレクトリにコピーするタスクが必要ですが、構成は除きprovided
ます。これどうやってするの?