我在Java中使用Reflections:
<dependency>
<groupId>org.reflections</groupId>
<artifactId>reflections</artifactId>
<version>0.9.10</version>
</dependency>
我可以加载除测试类之外的所有类。
List<ClassLoader> classLoadersList = new LinkedList<ClassLoader>();
classLoadersList.add(ClasspathHelper.contextClassLoader());
classLoadersList.add(ClasspathHelper.staticClassLoader());
Reflections reflections = new Reflections(new ConfigurationBuilder()
.setScanners(new SubTypesScanner(false /* don't exclude Object.class */), new ResourcesScanner())
.setUrls(ClasspathHelper.forClassLoader(classLoadersList.toArray(new ClassLoader[0]))));
我正在使用这种方法:
Set<Class<?>> allClasses = reflections.getSubTypesOf(Object.class);
我的测试类与其他类位于同一位置(在src / main / java中)
我认为这是由于该框架。
我认为Reflections找不到JUnit,因此无法加载该类。
我可以给“思考”一个类路径吗?
最佳答案
不是目标吗? =>反射未见...
关于java - 为什么反射不想加载我的测试类?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40959059/