我正在调试一个包含许多类和表单的项目,对我来说非常有用,可以找到项目中使用的所有公共变量。 在Netbeans中有没有办法做到这一点?我没有能够找到Netbeans来实现这一目标。
非常感谢。
答案 0 :(得分:1)
应该可以使用http://code.google.com/p/reflections/
import static org.reflections.ReflectionUtils.getAllFields;
import static org.reflections.ReflectionUtils.withModifier;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.LinkedHashSet;
import java.util.Set;
import org.reflections.Reflections;
import org.reflections.scanners.SubTypesScanner;
import org.reflections.util.ClasspathHelper;
public class PublicFieldsReflectionsTest
{
public static void main(String[] args)
{
Reflections reflections = new Reflections(
"de.your.project.prefix",
ClasspathHelper.forClass(Object.class),
new SubTypesScanner(false));
Set<Class<?>> allClasses = reflections.getSubTypesOf(Object.class);
Set<Field> allPublicFields = new LinkedHashSet<Field>();
for (Class<?> c : allClasses)
{
//System.out.println("Class "+c);
allPublicFields.addAll(getAllFields(c, withModifier(Modifier.PUBLIC)));
}
for (Field field : allPublicFields)
{
System.out.println(field);
}
}
}