首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >注释处理第三方库

注释处理第三方库
EN

Stack Overflow用户
提问于 2017-02-13 17:41:48
回答 1查看 2.1K关注 0票数 2

我正在为一个Android项目编写注释处理器,并且遇到了这样的情况。我想从库模块处理带注释的类,即app模块依赖于库模块,并且需要处理库模块中的带注释的类。

但是,注释处理器无法从依赖项“看到”注释,这大概是因为代码已经编译好了。有关另一个库的问题,请参见这里。在分支这里上演示了我的项目的问题。来自sample模块的注释将被处理,而来自lib模块的注释则不会被处理。

这一切都很好,而且我已经接受了没有这个功能的生活,但是Android数据绑定库可以处理来自模块甚至第三方库的注释。例如,库提供了应用程序处理得很好的@BindingAdapter方法。

在我使用的注解上设置保留类型是没有用的。我能看到的唯一显著区别是,数据绑定处理器以方法为目标,而我的方法则以类(类型)为目标,但我不认为这与处理器有什么不同。所以我想这可能和数据绑定处理器是Android插件的一部分有关,但我不知道这有什么用。

有人知道怎么做到的吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-14 01:54:02

Android数据绑定也不能处理依赖项上的注释。相反,它在库的编译时处理库,并将信息保存到中间文件作为其存档(例如jar文件)的一部分。然后,它从依赖项加载该中间文件信息,而不是读取注释。

如果将中间信息保存为jar文件依赖项的资源,则可以很容易地从jar文件中提取它。如果我没记错的话,它应该在您的类路径中,您可以使用ClassLoader的getResource()方法。我的内存可能有点陈旧,因为它不再使用jar文件来存储中间文件信息。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42210185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档