2013-07-23 36 views
28

私のjarの多くは、過渡的な依存関係が矛盾しています(複数のスプリングバージョン)。私はすべての私の依存関係を明示的に管理することによって継承されたバージョンの競合を回避したいと思います.Gradleのすべての推移的依存関係を無効にすることは可能ですか?Gradle、すべての推移的依存関係を無効にする方法

私はそれぞれの依存関係にtransitive = falseを追加することができますが、もっと簡単な方法があると思っています。

compile(group: 'org.springframework', name: 'spring', version: '2.5.2') { 
    transitive = false 
} 

答えて

41

私が使用して終了:あなたはこれを表現するために拡散ドット演算子を使用することができ、すべての構成のためのちょうど1構成ブロックを持つようにしたい場合は

configurations.all { 
    transitive = false 
} 
+2

もう1つの解決策は、バージョンの競合に失敗し、これらを明示的に解決することです(すべての推移的な依存関係を明示的に管理するのではなく)。 –

+0

あなた自身の答えに満足しているなら、あなたはそれを受け入れて、その質問が回答とマークされるようにするべきです。 –

+1

@PeterNiederwieserあなたは自分の答えを受け入れるのに48時間待たなければなりません。 –

6

を。

configurations { 
    // other configurations e.g. - compile.exclude module: 'commons-logging' 
    all*.transitive = false 
} 
関連する問題