使用Spoon Gradle Plugin创建自定义注释处理器

时间:2017-03-24 20:05:28

标签: java annotations annotation-processing inria-spoon

我尝试使用SPOON在Android中编写注释处理器。

所以我的问题是当我编写我的注释处理器类时,如何向编译器指示它。

假设我的班级位于com.craftman.spoonprocessor.CustomProcessor

1 个答案:

答案 0 :(得分:1)

如果我理解你正在尝试指定Spoon将您的处理器与Gradle插件一起使用。最简单的方法是遵循那里给出的解释:https://github.com/SpoonLabs/spoon-gradle-plugin#how-to-add-processors。简而言之,您创建了一个仅包含处理器代码的特定gradle模块,然后您可以使用几乎相同的Gradle文件为您要处理的项目显示,您只需要为新的处理器模块添加依赖项: / p>

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']
}

希望这有帮助!