2016-11-15 2 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' 
    } 
} 
Смежные вопросы