在 Java 8 中,如何分层扫描包级注释(即package-info.java
文件中的注释)?
例如,我想找出存在于以下包中Class<x.y.z.C>
的类型的第一个注释,按顺序:A
x.y.z
x.y
x
(根包)
使用反射时,我可以调用D.class.getPackage()
来获取Package
for x.y.z
,并且可以看到该包上的注释。
但是没有办法从中获取for Package
(没有或等效的方法)。x.y
x.y.z
Package#getParent()
我尝试使用Package.getPackage("x.y")
,但这会返回null
。
我还没有得到那种方法来返回除null
.
我研究了 Reflections、Guava、ByteBuddy、Fast Classpath Scanner 等,但仍然找不到分层扫描包级注释的方法。