1,android-apt是一個Gradle插件,協助Android Studio處理annotation processors; 2,annotationProcessor和android-apt的功能是同樣的; 3,APT(Annotation Processing Tool)是一種處理註釋(註解)的工具,它對源代碼文件進行檢測找出其中的Annotation,根據註解自動生成代碼; 4,annotationProcessor是APT工具中的一種,它是Goolge開發的內置框架,不須要引入,能夠直接在build.gradle文件中使用(須要設置Android Gradle插件爲2.2以上);
JavaPoet是一個用來生成.java源文件的Java API。當作如註解或者數據庫模式,協議格式等工做時,生成源文件就比較有用處。JavaPoet生成的源代碼而不是字節碼,因此能夠經過閱讀源碼確保正確。
JavaPoet的基本使用 - crazy_jack - CSDN博客java
註解處理器(AbstractProcessor)+代碼處理(JavaPoet)+處理器註冊(AutoService); APT(Annotation Processing Tool)是一種處理註解的工具,它對源代碼文件進行檢測找出其中的Annotation,根據註解自動生成代碼。讓APT發揮做用的最後一步是引入註解處理器(繼承自 AbstractProcessor的類),能夠使用兩個框架android-apt和annotationProcessor,這兩個框架的做用相同,只須要使用一個便可,android-apt是一位開發者開源的框架,要使用須要引入該庫, 而annotationProcessor是Google官方提供的框架,升級Android Gradle插件到2.2以上就能夠直接使用。
//第一個參數就是生成Java文件所在的位置,若爲空則默認路徑爲ModuleName/build/generated/source/apt/degug/ JavaFile javaFile=JavaFile.builder("",helloWorld) .build(); 使用annotationProcessor要將Android Gradle plugin設置爲2.2.0以上,如這樣設置classpath 'com.android.tools.build:gradle:2.3.0' AutoService主要的做用是註解processor類(繼承自AbstractProcessor),並對其生成META-INF的配置信息。
你必須知道的APT、annotationProcessor、android-apt、Provided、自定義註解 - 薛瑄的博客 - CSDN博客android