Java 8:分层扫描包级注释



在Java 8中,如何分层扫描软件包级注释(即package-info.java文件中的注释(?

例如,我想找出Class<x.y.z.C>,在以下包上找到的第 A 类型注释,按顺序:

  1. x.y.z
  2. x.y
  3. x
  4. (根包(

使用反射时,我可以调用Package来获取Packagex.y.z,并且我可以看到该包上的注释。

但是没有办法从Package#getParent()获得x.y.z x.y(没有Package.getPackage("x.y")或等效的方法(。

我尝试使用null,但这返回null

除了CC_17之外,我还没有得到该方法返回任何其他内容.

我已经研究了Reflections,Guava,ByteBuddy,Fast Classpath Scanner等,但仍然找不到分层扫描包级注释的方法。

我刚刚意识到我可以通过执行以下操作找到包的注释:

Class.forName("x.y.package-info").getAnnotations()

相关内容

  • 没有找到相关文章

最新更新