一个小插件,根据注解自动生成说明文档

Posted 山水相逢-z

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一个小插件,根据注解自动生成说明文档相关的知识,希望对你有一定的参考价值。

一、背景

我们app里有很多事件埋点,pm经常会来问某个操作埋点了吗,埋点值是啥啊,经常会需要在代码里找,虽然我们有自己的埋点录入平台,但是需要手动输入,为了提高效率,写了一个小插件,用自定义注解的形式,在build的时候,自动将被注解的埋点统一输出到一个文档里,方便查找。

目前功能比较简单,只能固定路径生成txt文档,后续会支持更多功能。

二、原理

主要是自定义注解处理器来实现的,学习了这篇文章

三、用途:

用注解标注需要说明的变量,编译后自动在当前项目根目录生成文档。

四、使用方法

  1. 添加依赖
    在app->build.gradle下:
dependencies 
           ... 
           api project(':processor') 
           annotationProcessor project(':processor') 
           ... 
       
  1. 注解变量
    在需要标注的变量添加注解 DescAnnotation
	   @DescAnnotation(title = "test_str_one", desc = "我是第一个变量的描述")
	   private String testStrOne = "test_str_one"; 
	   @DescAnnotation(title = "test_str_two", desc = "我是第二个变量的描述")
	   private String testStrTwo = "test_str_two";
  1. 执行编译

    build->rebuild project

  2. 查看文档

    在项目根目录会生成 注解生成文档.txt,里边儿就是注解字段内容。

  1. 自定义配置

使用者可自定义文档输出路径以及生成文件名,在app->build.gradle->android>defaultConfig下添加配置:

 javaCompileOptions 
        annotationProcessorOptions 
            arguments = [docOutputPath: System.getProperty("user.dir") + "/annoationDoc/", docOutputName: 'eeee注解生成文档']
            classNames = ['com.zq.processor.CustomAnnoationProcessor']
        
       
docOutputP

ath:文档输出路径,可自由配置

docOutputName:生成文件名,可自由配置

classNames:注解处理器,这个不要修改

四、todo

  • 生成文档目录自定义配置
  • 文档内容格式优化
  • 上传到bintray.com,方便依赖

最后附上项目地址:CustomAnnoationProcessor,有类似需要的朋友可以使用,也欢迎一起让它更加丰富。

以上是关于一个小插件,根据注解自动生成说明文档的主要内容,如果未能解决你的问题,请参考以下文章

Java 注解

神秘的Java注解

java 注解详解

java注解详解

Java注解 看这一篇就够了

注解---入门