java - 使用 Spoon Gradle 插件创建自定义注释处理器

标签 java annotations annotation-processing inria-spoon

我正在尝试使用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']
}

希望这有帮助!

关于java - 使用 Spoon Gradle 插件创建自定义注释处理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43008245/

相关文章:

java - 需要一种存储 4D 数组的方法

angular - 如何在 Angular 的 PDF 查看器中添加注释和注释

java - 如何从TypeMirror对象获取类型描述符(JNI风格)String(注解处理)

java - Spring Boot Web 应用程序没有缓存控制 header

java - 逆向工程排序算法

java - 运行Servlet时出现异常: java. lang.ClassNotFoundException : javax. servlet.http.HttpServletRequest

xml - JAXBException 发生 : class javax. jdo.identity.LongIdentity 及其任何父类(super class)在此上下文中均未知

intellij-idea - 如何在我自己的注释中自定义 IntelliJ 提供的值

java - maven 中的注释处理器输出