日期:2014-05-20  浏览次数:20961 次

eclipse下运行简单程序,出现Exception in thread "main" java.lang.ClassNotFoundException错误
请看一下:
源码:
Java code
package Ttest;

import java.lang.reflect.Field;
import Commen.Tstring;;
public class Reflection_Test{
    public static void main(String[] args) throws Exception {
        Tstring t1 = new Tstring("taotao", "good");
        Field s1 = Class.forName("Tstring").getField("s1");
        Field s2 = Class.forName("Tstring").getField("s2");

        System.out.println(s1.get(t1));
        System.out.println(s2.get(t1));        
    }
}



错误信息:
Exception in thread "main" java.lang.ClassNotFoundException: Tstring
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at Ttest.Reflection_Test.main(Reflection_Test.java:8)


昨天用eclipse的时候也是这样,一个简单小程序都报找不到类。重启eclipse重新建立工程后可以运行了。
想请教下这种情况是classPath的问题么?求解决 。



------解决方案--------------------
CLEAN 下你的项目 重新编译下~· 

------解决方案--------------------
你试试改成下面的代码能不能行
Java code

package Ttest;

import java.lang.reflect.Field;
import Commen.Tstring;
public class Reflection_Test{
    public static void main(String[] args) throws Exception {
        Tstring t1 = new Tstring("taotao", "good");
        Field s1 = Class.forName("Commen.Tstring").getField("s1");
        Field s2 = Class.forName("Commen.Tstring").getField("s2");

        System.out.println(s1.get(t1));
        System.out.println(s2.get(t1));        
    }
}