@Nonnull
@Override
public List<String> apply(@Nonnull AnalysisContext analysisContext) {
List<String> inheritedAnnotations = newArrayList();
ClassPool classPool = classPoolAccessorFor(analysisContext).getClassPool();
for (String annotation : getAnnotationsFoundInClassPath(analysisContext)) {
CtClass annotationClazz = classPool.getOrNull(annotation);
if (annotationClazz == null) {
logger.debug("Annotation [{}] cannot be found on the class path; skipping detection", annotation);
continue;
}
try {
if (annotationClazz.getAnnotation(Inherited.class) != null) {
inheritedAnnotations.add(annotation);
}
} catch (ClassNotFoundException e) {
logger.debug("@Inherited is not available; this is quite disturbing.");
}
}
logger.debug("Found those inheritable annotations: {}", inheritedAnnotations);
return inheritedAnnotations;
}
AnnotationsAnalyzer.java 文件源码
java
阅读 27
收藏 0
点赞 0
评论 0
项目:deadcode4j
作者:
评论列表
文章目录