我正在尝试使用 javaassit 列出 jar 文件中的变量。 我想检查类文件中的字段是否属于集合类型。我正在使用“Collection.class.isAssignableForm”,但它不起作用,因为 field.getType().getCLass() 将类返回为 CtCLassType。 有没有办法检查 CtClass 字段是否属于 Collection 类型? 以类似的方式如何检查该字段类型是否可序列化?
CtClass loClass = ClassPool.getDefault().get(lsClassName);
CtField[] loFields = loClass.getDeclaredFields();
// iterate over fields
for(CtField field: loFields){
// this does not work
Collection.class.isAssignableForm(field.getType().getCLass());
}
非常感谢任何帮助。
尝试先将其转换为类吗?
Class clazz = loClass.toClass();
Field[] loFields = clazz.getDeclaredFields();
...