2014-02-11 5 views
2

Я написал плагин Gradle, его версия указана в его скрипте сборки.Получите пользовательскую версию плагина Gradle из собственного кода

Возможно, этот плагин узнает о своей собственной версии, когда кто-то ее использует? (т. е. когда вызывается его метод apply(Project project))

ответ

4

Для моих плагинов я вставляю поле в файл MANIFEST.MF, называемый Version-Version во время сборки. Потом я прочитал, что поле в процессе выполнения, путем доступа к пакету, как это:

def pkg = MyPlugin.class.getPackage() 
return pkg.implementationVersion 

Или используя вспомогательный класс, как: https://github.com/nebula-plugins/nebula-core/blob/master/src/main/groovy/nebula/core/ClassHelper.groovy#L16 захватить произвольное поле из манифеста.

+1

Он отлично работает, спасибо. Фрагмент для добавления свойства в манифест: 'jar { manifest { атрибуты (« Версия реализации »: версия) } }' – Vincent

Смежные вопросы