Gradle の最上位の依存関係として含めていないライブラリに対する Java コードの依存関係をすべて見つけたいと考えています。
これを達成する方法についての私の最初のことは、Gradle のすべての推移的な依存関係をオフにして、どのようなコンパイル エラーが発生するかを確認することです。
私の調査によると、これを行う方法は次のようです。
configurations.all { transitive = false }
より良い方法はありますか、それともこれでうまくいきますか?
Gradle の最上位の依存関係として含めていないライブラリに対する Java コードの依存関係をすべて見つけたいと考えています。
これを達成する方法についての私の最初のことは、Gradle のすべての推移的な依存関係をオフにして、どのようなコンパイル エラーが発生するかを確認することです。
私の調査によると、これを行う方法は次のようです。
configurations.all { transitive = false }
より良い方法はありますか、それともこれでうまくいきますか?
質問の意味がよくわかりませんが、コマンド ライン " gradle dependencies
" が役立つかもしれません。
たとえば、これを考えてみましょう (このささやかなプロジェクトから):
dependencies {
groovy 'org.codehaus.groovy:groovy-all:1.6.4'
groovy 'com.google.guava:guava-collections:r03'
releaseJars 'org.codehaus.groovy:groovy-all:1.6.4'
releaseJars 'com.google.guava:guava-collections:r03'
}
を使用するgradle dependencies
と、次のような出力が得られます。
compile - Classpath for compiling the main sources.
+--- org.codehaus.groovy:groovy-all:1.6.4
| +--- junit:junit:3.8.2
| +--- org.apache.ant:ant:1.7.1
| | \--- org.apache.ant:ant-launcher:1.7.1
| +--- org.apache.ant:ant-launcher:1.7.1
| \--- jline:jline:0.9.94
| \--- junit:junit:3.8.1 -> 3.8.2
\--- com.google.guava:guava-collections:r03
+--- com.google.guava:guava-annotations:r03
\--- com.google.guava:guava-primitives:r03
....