apt意为:annotation processing tool(注解处理工具),它能通过注解,在编译期自动生成特定的java文件,实现自动编写代码。
1、在工程创建一个java module ,在apt的build.gradle里,添加如下依赖。
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
compileOnly 'com.google.auto.service:auto-service:1.0-rc2'
annotationProcessor 'com.google.auto.service:auto-service:1.0-rc2'
// 利用构建者模式生成java 文件
implementation 'com.squareup:javapoet:1.7.0'
}
(其中:1.auto-service是用于注解后自动在特定路径下生成配置文件; 2.javapoet是用于配合apt便捷生成java文件的工具。)
2、再次新建一个module(android、java都可以)annotation,用于存装注解,并且在app、apt的build.gradle文件下,添加依赖。
implementation project(':router-annotation')
3、在annotation 模块新建一个注解类
'''
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.CLASS)
public @interface Route {
String path();
String group() default "";
}
'''