2016-11-15 17 views
0

私は依存関係が私の構成でブロックします:Gradle:特定のタスクに依存関係を追加する方法は?

dependencies { 
    compile ... 
} 

は今、私は特定のデバッグアーチファクトを構築するタスクを作成しようとしている:このタスクに建て

task buildDebugRpm (type: Rpm) { 
    requires('java-1.8.0-openjdk', '1.8.0.0', GREATER | EQUAL) 
     ... 
} 

アーチファクトは、AspectJのライブラリを含める必要があります実行時にしかし、私は共通のプロジェクト依存関係にそれらを持たせたくありません。

"org.aspectj:aspectjrt:1.8.9", "org.aspectj:aspectjweaver:1.8.9"のlibsをこの特定のタスクにのみ追加する方法はありますか?

答えて

1

カスタム構成を作成し、それに依存関係を追加することができます。

configurations { 
    debugRpm { 
     extendsFrom compile 
    } 
} 

dependencies { 
    compile ... 

    debugRpm 'org.aspectj:aspectjrt:1.8.9' 
    debugRpm 'org.aspectj:aspectjweaver:1.8.9' 
} 

その後の作業でこれらの依存関係を含める:

task buildDebugRpm (type: Rpm) { 
    ... 

    from(configurations.debugRpm) { 
     into 'lib' 
    } 
} 
関連する問題