我的genxml
项目中包含两个项目,framework1
和framework2
。 Framework2
是framework1
的更新版本,它们都有类AbstractScreenTest.class
。无论如何在下面的代码中我可以指定哪个
项目我想与之互动?
ClassPathScanningCandidateComponentProvider provider = new ClassPathScanningCandidateComponentProvider(true);
provider.addIncludeFilter(new AssignableTypeFilter(AbstractScreenTest.class));
Set<BeanDefinition> components = provider.findCandidateComponents(candiatePackage);
for (BeanDefinition component : components){
cls = Class.forName(component.getBeanClassName());
classList.add(cls.getName().toString());
}
答案 0 :(得分:0)
您可以将@Deprecated批注添加到旧的(过时的)类中,并验证该组件不包含已弃用的批注。
for (BeanDefinition component : components){
cls = Class.forName(component.getBeanClassName());
if (!cls.isAnnotationPresent(Deprecated.class) {
classList.add(cls.getName().toString());
}
}
当然,这假设您没有任何其他已弃用的类要添加到类列表中。在这种情况下,您可以编写一个新的注释来标记您的旧类,尽管它真的是理想的是摆脱对过时类的依赖。