我有一个遗留的spring(而不是boot)应用程序,我想用特定的注解来标记所有的类。为了达到这个目的,我使用以下答案:https://stackoverflow.com/a/1415338/2674303
所以我创建了以下类:
@Component
public class MyVerifier {
public void verify() {
ClassPathScanningCandidateComponentProvider scanner =
new ClassPathScanningCandidateComponentProvider(false);
scanner.addIncludeFilter(new AnnotationTypeFilter(MyAnnotation.class));
Set<BeanDefinition> set = scanner.findCandidateComponents("base.pack")
}
在代码中,我有:
package base.pack.ololo.qwery;
@MyAnnotation
public class MyClass...
package base.pack.another.packagename;
@MyAnnotation
public class MyOtherClass...
但是 set
变量为空集。为什么?
如何修复?
1条答案
按热度按时间wa7juj8i1#
我对注解保留策略有问题,所以注解在运行时不可用
旧(坏)版本
新(工作)版本: