Использование Spoon Gradle Plugin для создания собственного обработчика аннотаций
Я пытаюсь написать процессор аннотаций в Android с помощью SPOON.
Поэтому мой вопрос: когда я написал свой класс процессора аннотаций, как указать его компилятору.
Предположим, что мой класс находится в com.craftman.spoonprocessor.CustomProcessor
1 ответ
Если я хорошо понимаю, вы пытаетесь указать Spoon для использования вашего процессора с плагином Gradle. Самый простой способ - это следовать приведенным там объяснениям: https://github.com/SpoonLabs/spoon-gradle-plugin. Короче говоря, вы создаете специальный модуль Gradle, содержащий только код вашего процессора, затем вы можете использовать практически тот же файл Gradle, который вы показываете для проекта, который вы хотите обработать, вам просто нужно добавить зависимость к вашему новому процессорному модулю:
buildscript {
repositories {
jcenter()
mavenLocal()
maven {
url 'http://spoon.gforge.inria.fr/repositories/'
}
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.0'
classpath group: 'fr.inria.gforge.spoon',
name: 'spoon-gradle-plugin',
version:'1.0-SNAPSHOT'
// here you put your module dependency
classpath group: 'com.craftman.spoonprocessor',
name: 'customprocessor',
version: '1.0_SNAPSHOT'
classpath files('build/classes/main')
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
apply plugin: 'java'
apply plugin: 'spoon'
spoon {
processors = ['com.craftman.spoonprocessor.CustomProcessor']
}
Надеюсь это поможет!