11得票2回答
类型isAssignable和isSubtype的误解

在使用Java 6 API编写注释处理器时,我发现需要以特定的方式处理所有映射,但我显然误解了API的用途或如何调用它。这是使我不高兴的代码:import javax.lang.model.element.Element; import javax.lang.model.type.TypeMi...

13得票2回答
Android Studio中的多模块注解处理

我在Android Studio中有一个包含多个模块的项目。一个模块可能依赖于另一个模块,例如: 模块PhoneApp -> 模块FeatureOne -> 模块Services 我已经将我的注解处理器包含在根模块中,但是android-apt注解处理器只会在最顶层(PhoneApp)进行...

38得票3回答
指定注解处理器的顺序

我想在我的Java项目中同时运行Dagger 2和Lombok。当然,Lombok必须先运行,但它是否真的这样做似乎是由机会决定的。起初,我怀疑我可以通过类路径中库JAR的相应位置来指定顺序,但显然该顺序被忽略了。 是否有一种方法可以在运行它们时指定顺序,或者我只能接受无法组合两个AP的事实...

7得票1回答
使用Kotlin与MapStruct生成源代码时出现NonExistentClass错误

我想在Kotlin项目中使用Mapstruct将内部模型映射到由OpenApi3代码生成器生成的模型。然而,在编译项目时,似乎Mapstruct无法找到OpenApi3代码生成插件生成的源代码,因此生成的实现包含一个NonExistentClass而不是我的OpenApi模型。 我的插件配置...

38得票7回答
Maven 3 - 如何添加注解处理器依赖?

我需要在项目源代码上运行一个注解处理器。注解处理器不应成为项目的传递性依赖项,因为它仅用于注解处理而不是其他任何目的。 这是我用于此目的的完整(不起作用的)测试pom:<project xmlns="http://maven.apache.org/POM/4.0.0" ...

8得票2回答
能否使用注释处理器生成类的内部类?

我想知道是否有可能通过注解处理器生成一个类,并将其作为要编译的类的内部类。 例如,在编译类 A 时,生成类 A$Foo。我想知道是否有一些技巧可以使用。我有一种感觉,可以生成一些源代码,这些源代码将与内部类相同的字节码一起编译。在编译/运行时,JVM 将其视为内部类,并允许访问外部类的私有字...

16得票3回答
注解处理器 - 如何获取它正在处理的类

我正在尝试编写自定义注解处理器。 注解处理器将在编译时处理每个类文件以检查注解, 但是我如何能够获取它当前正在处理的类? 下面的代码只能获取类名。public class AnnotationProcessor extends AbstractProcessor { ...... ...

19得票3回答
如何减少React Native Android应用程序的启动时间

我目前在探索如何减少Android启动时间。对于iOS而言这不是问题,但对于Android来说,我看到的启动时间在6-10秒之间。目标是在3-4秒左右。 以下是我找到的研究摘要: createReactContext:初始化React桥并开始加载所有本地模块的地方 getMethodDe...

14得票1回答
Gradle + 注解 + 渠道包 = 注解处理器无法运行

我有一个使用注解处理器(Android Annotations)生成代码的Gradle构建脚本。在添加了一个新的Pro Flavor之后,构建过程出现问题。我可以成功构建Free flavor,但当我构建Pro flavor时,注解处理器不会运行。这导致缺失代码和构建失败。 以下是我的脚本:...

7得票1回答
Android多模块注解处理

在多模块的Android项目中,注解处理仍然是在任何编译之前执行的第一个任务,然后触发完整的编译。当然,在进入app模块之前,这是针对每个模块完成的。 想象一种情况,其中一些子模块依赖于其他模块,由于它们尚未生成,因此无法在依赖的模块中找到生成类的定义,因此编译将失败。 我想知道是否有一种...