2016-10-31 10 views
0

Я только начинаю создавать плагин для нашей системы сборки. Мой плагин имеет одну задачу, которая печатает сообщение. Я могу опубликовать моментальный снимок этого плагина в нашу папку artifactory snapshot, и мое первое использование этого из файла тестовой сборки работает. Однако последующая публикация обновленного моментального снимка плагина не может быть втянута в мою тестовую сборку (она кэшируется). Я могу поднять ревизию моментального снимка, опубликовать новую версию, и это работает (побеждает кеш), но такого рода поражает цель снимка нет? Я видел несколько сообщений о разгроме кэш определенной зависимости, добавив:Тестирование моментального снимка развертывания плагина градиента в стадии разработки

configurations.all { 
    resolutionStrategy.cacheChangingModulesFor 0, 'seconds' 
} 

и настройка «меняющегося» атрибут на моем плагине зависимость:

dependencies { 
    classpath ('org.my.gradle:my-gradle-plugins:1.0.7-SNAPSHOT') { 
     changing = true 
    } 
} 

Ни один из этих параметров не имеет какой-либо эффект. Плагин остается кешированным. Я, конечно, не хочу сдуть весь кеш и напасть на работу над версиями, но я бы предпочел не делать этого, пока я кодирую плагин, поскольку он несколько трудоемкий.

Идеи?

+0

(https: //discuss.gradle .org/т/тестирование-снимок развертывания в своем-плагин-под-конструкции/20264/2? и = bill_pfeiffer). Быстрый ответ заключается в том, чтобы добавить стратегию разрешения в блок buildscript в блоке configuration.classpath. –

ответ

0

solution является перемещение resolutionStrategy в buildscript блок: [. Решенный Бенджамин Muschko на Gradle форумах]

buildscript.configurations.classpath { 
    resolutionStrategy.cacheChangingModulesFor 0, 'seconds' 
} 

Кредит Benjamin Muschko для этого solution