2017-06-27 3 views
0

gradle warプラグインの例:なぜmoreLibsを次のように定義する必要がありますか?説明してください:gradle howの設定が使用されています

configurations { 
    moreLibs 
} 

dependencies { 
     moreLibs ":otherLib:1.0" 
} 

war { 
    classpath configurations.moreLibs 
    webXml = file('src/someWeb.xml') 
} 

設定内に何かを定義できますか?

configurations { 
    foobar 
} 

私は多くの場所でこれらを見ました。誰でも説明できますか?

答えて

2

はい、設定ブロックに何かを書くことができ、その名前の新しい設定が作成されます。さらに設定することもできます。 g。そのtransitiveプロパティをfalseと他のものに設定します。

カスタム設定は、自動的にGradleによって自動的に解決される依存関係を定義するための名前であり、解決されたファイルが必要なさまざまな目的に使用できます。

例ではmoreLibsの設定を定義し、Gradleによって一時的に解決される依存関係を追加してから、libディレクトリに追加します。

必要がない場合は、これを行う必要はありません。 runtime構成(したがってcompile構成のもの)のすべてのライブラリは、自動的にwars libディレクトリに追加されます。しかし何らかの理由で追加のライブラリが必要な場合は、compileまたはruntimeに追加したくない場合は、このようにすることができます。

カスタム構成が役に立つ別の例は、カスタムAntタスクを使用する場合です。カスタム構成を定義し、Antタスクの依存関係を追加してから、Gradleで推移的に解決させ、Antのtaskdefへのクラスパスとしてファイルセット全体を追加することができます。

関連する問題