annotation-processing相关内容

注释处理器,获取方法参数的修饰符

我目前正处于使用Java自定义注释的项目中。我想强制我的注释的用户,如果他用@Foo注释了方法,他必须在方法参数列表中声明至少一个 final boolean b 。所以看起来应该是这样的: @Foo public void foo(final boolean b){} @Foo public void bar(){} //这会导致错误 使用我的注释处理器, ..
发布时间:2018-12-29 19:17:46 Java开发

Android Studio中缺少编译器选项> = 0.8.2

最近我将 Android Studio 升级为 0.8.2 。现在,我的基于android-annotations的项目无法构建。似乎注释处理以某种方式被禁用。似乎项目编译器设置已经改变,打开/关闭注释处理的选项无处可寻...... 我无法将'编译器'选项扩展为我之前可以: 他们把这些选项放在哪里? 解决方案 这有点晚了,但对我来说,它在 文件 - >其他设置 - >默认 ..
发布时间:2018-12-28 21:51:53 Java开发

Java Annotations Processor:检查TypeMirror是否实现特定接口

我正在使用Java注释处理器。我的注释 @foo 用于标记可在运行时读取到文件或文件的字段变量。但是,我想检查变量类型是否在编译期间实现 Serializable ,这样如果该字段不可序列化,我可以在编译时发出警告/错误。 / p> (我不需要实际检查对象是否可序列化,如果它实现了 Serializable 接口我'我会相信它。) 我已经想出了如何做其他的事情,但我无法弄清楚如何检查该 ..
发布时间:2018-12-27 19:32:08 Java开发

如何从TypeMirror创建实例

我有一个注释,根据这个成语接收“动态”参数,即接口类型的参数。简而言之: public interface MyInterface {} public @interface MyAnnotation { Class< ;?扩展MyInterface>值(); } 现在,要评估此参数,我需要创建提供的实现的实例。上面链接的答案在运行时执行此操作。然而,我正在 ..
发布时间:2018-12-24 12:27:47 Java开发

maven中的注释处理器输出

我正在使用JSR 269作为在编译期间分析代码的方法,并在需要时将其失败。 我在maven中显示我的注释处理器的输出时遇到了麻烦(Ant确实显示了输出) 我正在使用javax.annotation.processing.Messager来显示警告和错误,但在maven我看不到它的输出。 (我确实知道它运行,因为它生成的代码应该如此)。 任何想法? 解决方案 我认为你遇到了Maven错 ..
发布时间:2018-12-17 10:28:53 Java开发

为maven-processor-plugin编写注释处理器

我有兴趣为maven-processor-plugin编写注释处理器。我对Maven来说比较新。 项目路径中的处理器Java源代码应该去哪里(例如:src / main / java / ...)以便它适当编译,但不会作为我的工件JAR文件的一部分结束? 解决方案 最简单的方法是保留注释处理器在一个单独的项目中包含为依赖项。 如果这对您不起作用,请使用此配置 编译器插件: ..
发布时间:2018-12-12 18:53:37 Java开发

指定注释处理器的顺序

我正在尝试在Java项目上运行Dagger 2和Lombok。当然,龙目岛必须首先运行,但实际上它是否真的有机会。起初我怀疑我可以通过类路径中库jar的相应位置来指定顺序,但是该顺序显然会被忽略。 有没有办法指定他们以某种方式运行的顺序,或者我只能忍受不能组合两个AP? 我已经产生了 ..
发布时间:2018-12-05 10:18:39 Java开发

使用注释处理器替换代码

我正在尝试编写注释处理器在类上插入方法和字段......文档很稀疏。我没有走得太远,我不知道我是否正确接近它。 处理环境提供了 Filer 对象,它有方便的方法来创建新的源文件和类文件。那些工作正常,但后来我试图弄清楚如何读取现有的源文件,它提供的只是“getResource”。所以在我的处理器实现中我做到了这一点: @Override public boolean proces ..
发布时间:2018-11-28 21:10:15 Java开发

如何生成JPA 2.0元模型?

本着与 CriteriaQuery JPA 2.0还有一个支持 Metamodel的API 实体的代表。 是否有人知道此API的全功能实现(生成Metamodel而不是手动创建元模型类)?如果有人也知道在Eclipse中设置它的步骤会很棒(我假设它就像设置注释处理器一样简单,但你永远不知道)。 编辑: 偶然发现 Hibernate JPA 2 Metamodel Generator ..
发布时间:2018-11-26 20:37:58 Java开发

GWT生成器和Java注释处理器之间的区别?

GWT使用Generator创建代码,然后将所有内容都转换为JavaScript。另一方面,Java有一个注释处理器,它在所有内容都被转换为字节代码之前生成代码。 GWT生成器和Java注释处理器之间有什么区别? 生成器和处理器的调用方式也非常不同。对于每个置换,GWT为每个需要处理的类型实例化并运行一个生成器(这源于上述差异:生成器告诉GWT实际实例化给定类型的类作为输入),而注释处 ..
发布时间:2018-05-31 13:41:29 Java开发

多项目设置的请求验证

我试图改用gwt2.4的发行版,并遇到了问题。我在我的设置中使用多个项目。我有一个包含服务器代码的项目,一个包含共享代码的项目,可用于不同的gwt项目和一个gwt项目,它们将所有内容绑定在一起。我用maven构建一切。我遵循以下注释处理说明: http:// code.google.com/p/google-web-toolkit/wiki/RequestFactoryInterfaceVali ..

Gradle中的注释处理器将源文件输出为构建/类,从而导致javadoc失败。如何解决它?

我有一个注释处理器,在构建时由Java编译器自动拾取(使用SPI)。在Gradle构建过程中,由于Gradle通知注释处理器这是输出生成的源文件的位置,因此将此注释处理器生成的Java源放置在构建/类中。 运行标准javadoc任务时,它会尝试为build / classes中的所有文件(包括* .java)创建javadoc。因为javadoc只希望* .class文件,所以整个构建失败。 ..
发布时间:2018-05-17 18:49:56 Java开发

Java泛型:在运行时访问通用类型

我正在寻找在运行时访问声明字段的泛型类型。我以前的印象是,由于Java类型的擦除,这是不可能的。然而,这不一定是这种情况,因为一些众所周知的框架在运行时通过反射来利用泛型。例如,Guice将实现一个基于泛型您提供的类型: public class Injectable { @Inject private Provider ..
发布时间:2018-04-21 18:58:56 Java开发

如何在Eclipse Kepler中运行JSR269 annotion处理器与Java 7& Maven的

我使用eclipse开普勒,编译器设置为使用Java 7.我的类路径中有一个符合JSR269标准的注释处理器(在maven容器中)。 运行这个注解处理器最简单的方法是什么? 实际上,我希望Eclipse编译在构建期间自动运行这个注释处理器,因为它符合JSR 269标准 - 但它没有。为什么不 - 出于性能原因? 注意:命令行中的maven构建工作正常。 经过一些研究,结果证 ..
发布时间:2017-07-30 02:09:35 Java开发

Eclipse 3.5+ - 注释处理器:无法导入生成的类

我正在使用第三方注解处理器从我项目中的注释类生成元数据代码(.java文件)。 我已经通过Eclipse(属性 - > Java编译器 - >注释处理)成功配置了处理器,代码生成工作正常(代码自动创建和生成)。此外,Eclipse成功自动完成生成的类及其字段,没有任何错误。假设我有一个类“some.package.Foo”,生成的元数据类是“some.package.Foo_”。在自动完成的帮助 ..
发布时间:2017-07-29 23:11:49 Java开发

eclipse java注释处理

我想在eclipse jdt中使用注解处理来做某事。 Eclipse jdtapt帮助告诉我,我应该在java / compiler / annotation处理首选项页面上进行配置。 但是在我的安装(Indigo)上,编译器部分没有这个注释处理小节。它只有建筑物,错误/警告,javadoc,任务标签。 我的安装有问题吗? 解决方案 注释处理选项卡不存在于可从Eclips ..
发布时间:2017-07-29 21:00:54 Java开发

Eclipse - 注释处理器,获取项目路径

我正在为eclipse构建一个注解处理器插件, 我想做的是在处理过程中检查项目文件夹内的几个文件。 我想知道如何从我的处理器中获取项目路径。 我相信这可以做,因为项目源路径提供给处理器 - 但我找不到一种方法来达到它。 我试过看System.properties和processingEnv.getOptions(),但没有有用的信息.. 最终我想在Netbeans上使用这个注 ..
发布时间:2017-07-27 03:26:34 Java开发