用于快速apt开发,对apt进行包装
compile 'com.vinctor:annotationlib:0.0.2'
继承Vprocessor
,并添加注解@AutoService(Processor.class)
1.getSupportedAnnotations
(返回需要处理注解的class数组)
2.process
(处理注解主要方法)
note:主要工具类EntityHandler
,用户对注解进行包装,其已在父类中进行初始化,直接调用entityHandler.handlerElement(roundEnv, this)
进行调用,
返回已经包装完毕的 Map<String, ClassEntity>
,你可以对此进行进一步进行处理,如代码生成或者其他操作.
1.在process
方法中调用VLog.setDebug(true)
打开日志,应该在调用entityHandler.handlerElement(roundEnv, this)
之前调用
2如果您自己需要自定义一些规则,如:字段不能为private
或方法不能为private
或方法不能为abstract
类型
你可以在调用entityHandler.handlerElement(roundEnv, this)
之前调用entityHandler.setOnFieldRegulaListener
或者entityHandler.setOnMethodRegulaListener
对Element
进行复杂规则的判断
如果符合你的规则,你可以返回null
或者空字符串,如若该elemenet
不符合你的规则,
则返回非空字符串,当build时,会报出类似下面错误,错误信息为你返回的字符串