有没有办法使用javassist在系统搜索路径中查找现有java类的列表?我知道你可以使用“.getDefault()”来返回系统的默认搜索路径,有没有办法列出这个搜索路径上的类而不知道类名。
答案 0 :(得分:0)
如果您将代理/变换器附加到项目中,您可以轻松地记录或以某种方式保存加载到项目中的所有类
public class Agent {
public static void premain(String agentArgs, Instrumentation inst) {
inst.addTransformer(new ClassFileTransformer() {
@Override
public byte[] transform(ClassLoader classLoader, String s,
Class<?> aClass, ProtectionDomain protectionDomain,
byte[] bytes) throws IllegalClassFormatException {
// here you will see all the classes that are loaded into your project
// So just log its full name
System.out.println(s);
}
}
}