Eu fui testar um dos códigos desse artigo http://www.guj.com.br/articles/10 sobre Reflection e quando fui rodar deu este erro:
java.lang.NoClassDefFoundError: exemploreflection/Main
Caused by: java.lang.ClassNotFoundException: exemploreflection.Main
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: exemploreflection.Main. Program will exit.
Exception in thread "main" Java Result: 1
CONSTRUÍDO COM SUCESSO (tempo total: 0 segundos)
Eu só copiei e colei o código, não mudei nada:
[code]import java.lang.reflect.*;
public class Classe1 {
private int funcao1(Object p, int x) throws NullPointerException {
if (p == null) {
throw new NullPointerException();
}
return x;
}
public static void main(String args[]) {
try {
Class cls = Class.forName("Classe1");
Method methlist[] = cls.getDeclaredMethods();
for (int i = 0; i < methlist.length; i++) {
Method m = methlist[i];
System.out.println("nome = " + m.getName());
System.out.println("membro da classe = " + m.getDeclaringClass());
System.out.println("modificador = " + Modifier.toString(m.getModifiers()));
Class pvec[] = m.getParameterTypes();
for (int j = 0; j < pvec.length; j++) {
System.out.println("parâmetro #" + j + " " + pvec[j]);
}
Class evec[] = m.getExceptionTypes();
for (int j = 0; j < evec.length; j++) {
System.out.println("exceção #" + j + " " + evec[j]);
}
System.out.println("tipo de retorno = " + m.getReturnType());
System.out.println("-----");
}
} catch (Throwable e) {
System.err.println(e);
}
}
}[/code]
Alguma ideia do que pode ser?