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

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

假设我的课程位于com.craftman.spoonprocessor.CustomProcessor

最佳答案

如果我理解得很好,您正在尝试指定Spoon与Gradle插件一起使用您的处理器。最简单的方法是按照此处给出的说明进行操作:https://github.com/SpoonLabs/spoon-gradle-plugin#how-to-add-processors。简而言之,您创建了一个仅包含处理器代码的特定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']
}


希望这可以帮助!

10-07 19:40
查看更多