java - 为什么反射不想加载我的测试类?

标签 java class reflection classpath

我在 Java 中使用反射:

<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,因此它无法加载该类。 我可以给 Reflections 一个类路径吗??

最佳答案

未达到目标? => 反射看不到...

关于java - 为什么反射不想加载我的测试类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40959059/

相关文章:

java - "java.lang.ArrayIndexOutOfBoundsException"数组逻辑问题

javascript - 如何通过构造函数将一个对象设置在另一个对象下

javascript - ES6 类超出最大调用堆栈大小

java - JButton 的抽象错误和在接口(interface)类上找不到符号

Java > PHP Socket - 消息开头出现垃圾

Java 反射 : how do the Method. getGenericXXXXX 方法有效吗?

c# - 通用类型定义子类型不反射(reflect)

php - 使用反射查找某个方法所属的类

java - java中for元素包含null

java - 使用命令行参数启动 .jar 文件(但没有控制台窗口)