annotation-processing相关内容

如何在编译过程步调试注释处理器?

我有保留策略=源的注解注释处理器。 我没有想法如何分步调试。 我已经发出打印报表,记录信息,当我运行MVN安装,编译或包或蚂蚁javac和我看到他们sysouts在编译日志中。 不过,我不知道如何分步在Eclipse中调试处理器。我的意思是,你怎么步调试编译时? 解决方案 您必须调用从Eclipse的Java编译器,使用调试配置(您需要手动创建配置,从“调试配置... “菜单 ..
发布时间:2016-05-18 20:39:01 Java开发

添加注解与Java注解处理器

我知道注解处理器通常用于消耗的注释和反应给他们。但是,我哪里有这种“反应”涉及添加其他注释用例。可这在处理器本身做了什么?如果是这样,怎么样? 解决方案 简短的答案是是,然后你没有任何具体的事情。 注释处理器用于创建新源文件,而不是修改现有的。所以,当你说“添加其他注释”,我猜你的意思是“创造持有注释新类。” 注解处理在回合进行。在每一轮中, ..
发布时间:2016-05-17 20:07:24 Java开发

处理不同的注释具有相同的处理器实例

我们已经在我们的项目中两个注解,我想基于类的两份名单,收集类中的注解,并创建一个合并输出。 这是可能的只有一个处理器实例?我怎么知道,如果处理器实例与每一个注解类叫什么名字? 解决方案 框架调用 Processor.process 方法只一次(每个轮),并可以访问两个列表在通过传递 RoundEnvironment 参数同一时间。所以,你可以在同一个工艺处理两份名单方法调用。 要做到这 ..
发布时间:2016-05-17 20:06:51 Java开发

如何不编译使用javac源运行注解处理器(Java的8不能使用APT)

我 如何运行注解处理器无需编译使用javac(Java的8不能使用APT)来源是什么? 有可能没有编译所有的文件只运行注释处理任何参数的javac? 我想的javac做的: 只要找到注解的元素,并使用通过定义注释处理器处理它们 -processor ​​标志 做的不可以编译没有任何注解的源 因为我想这样做Java的8这是不可能的使用apt完成这个任务?或者,也许这是什么? ..
发布时间:2016-05-17 20:05:40 Java开发

Java注释处理:我怎么知道,如果一个圆是最后一个?

延长当 AbstractProcessor ​​,有覆盖的init(...)一种可能性,但没有“反其道而行之”的方法,这将以后被称为全部轮进行了处理。 这是一个问题:当你有追加每一轮的相同文件中收集到的信息,你就永远不能关闭文件,因为你永远不会知道什么时候在最后一个圆了。因此,该文件是永远不会关闭,仍然是空的。 使用shutdown钩也不起作用,钩永远不会被调用。 任何想法? 解决方案 ..
发布时间:2016-05-17 20:01:00 Java开发

注释处理工具< - 检查有效的注解

我 @ColumnMetadata(指数= 1) ... @ColumnMetadata(索引= 2) ... @ColumnMetadata(索引= 3) ... 和我要检查索引号是否使用APT独一无二的。我不知道如何做到这一点。我不明白的教程,一般我有问题在网络上找到的材料。 如何做到这一点?关于APT任何教程/什么? 解决方案 您可能想使用可插拔注解API中,易的工具的继任者。下 ..
发布时间:2016-05-17 19:52:36 Java开发

方法体内注释处理

我处理使用可插拔注释处理API的Java注释。是它在某种程度上可能也处理方法体内部使用的注释吗? 感谢您的帮助。彼得 解决方案 我想,我找到了解决办法。因为我认为,这是不可能与当前的javac。当地的注解只是简单的意见,并不会通过可插入注释处理API进行处理。但也有有趣的努力 JSR308 ,处理支持奇妙的事作为类型 - 参数类型注释变量,局部变量,注释,类型检查和铸造...并因为它看起 ..
发布时间:2016-05-17 19:45:51 Java开发

Debuging Java注释处理器(可能与Maven)

我想学习如何做一个自定义注解处理器和我被困,试图调试。 我已经成功地运行在调试模式下javac编译器(带有 mvnDebug干净安装)(与别人同注释处理器项目),连接到它的IntelliJ IDEA并使其停止在断点注解处理器。 如果我们有我们的项目是这样一些包,正在就像任何其他类(如无特殊配置或任何东西。) 公共类MyProcessor继承AbstractProcessor ​​{...} ..
发布时间:2016-05-17 19:44:40 Java开发

如何编写Java注释处理器自动单元测试?

我用java注释处理器试验。我能写使用“JavaCompiler的”集成测试(其实我使用“山核桃”的时刻)。我可以运行编译过程,并分析输出。问题:大约半秒,即使没有在我的注解处理器的任何code单一的测试运行。这是太长时间在TDD风格使用它。 嘲讽走的依赖性看起来很辛苦,我(我会模拟出了整个“javax.lang.model.element中的”包)。有人成功编写注释处理器(Java 6中)的单 ..
发布时间:2016-05-17 19:37:04 Java开发

如何使用自定义注解处理器与Maven 2?

在我们的企业应用程序,我们正在寻求一种动态的方式来收集我们的Java类的数据。我们创建了一个自定义的注释界面( @interface )以名称属性。我们想从所有注解的类收集这些属性的值。 我设法创建一个 AnnotationProcessorFactory 和 AnnotationProcessor ​​自定义注释。由于我们使用Maven 2,添加以下到的pom.xml 主体工程的插件。 &L ..

你如何使用Java 1.6注解处理进行编译时织入?

我已经创建了一个注解,它适用于DTO和书面一个Java 1.6风格annotationProcessor。我可以看到有annotationProcessor写一个新的源文件,这是不是我想做的事情,我无法看到或了解如何把它修改现有的类(理想情况下只需修改一个字节code)。修改实际上是相当琐碎,我要的处理器做是插入一个新的getter和setter所在的名字来源于被处理的注解的值。 我的注释处理器 ..

从Java注解处理器访问源$ C ​​$ C

我试图从Java注解处理器中访问一个类型的实际原始出处code。这可能不知?谢谢! 解决方案 我有一个问题,我必须访问一些源$ C ​​$ C(初始化code为非字符串/非基本不变)得到它经由编译器树访问源$ C ​​$ C解决API 。 这里的通用配方: 1。创建自定义TreePathScanner: 私有静态类codeAnalyzerTreeScanner延伸TreePathSc ..
发布时间:2016-05-16 21:40:29 Java开发

javax.annotation.processing中的Andr​​oid包中缺少

我想基于以下链接的例子做一些注释处理:的http://www.zdnetasia.com/writing-and-processing-custom-annotations-part-3-39362483.htm. 不过,我想在我的Andr​​oid项目来实现这一点,似乎我不能与Android平台使用的软件包。我是否需要添加一个外部罐子或者是有什么我失踪? 感谢。 解决方案 的 j ..
发布时间:2015-12-07 00:04:57 移动开发