package com.w1520.JavaDemo;public class JavaDemo{
public static void main(String []args){
System.out.println("Hello World!");
}
}
~
编译没有错误,运行的时候报错了:
Exception in thread "main" java.lang.NoClassDefFoundError: JavaDemo (wrong name: com/w1520/JavaDemo/JavaDemo)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
类文件是用eclipse创建的(也用文本创建了一个),去掉package声明,在终端就可以运行了,而添加package之后就报错了。
echo $CLASSPATH
/usr/java/jdk1.7.0_13/lib/tools.jar:/usr/java/jdk1.7.0_13/lib/dt.jar:.echo $PATH
/usr/java/jdk1.7.0_13/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:.:/home/puruidong/.local/bin:/home/puruidong/bin系统配置.
那在myeclipse里面怎么也提示这个呢?[我是用的系统的jdk1.7,不是myeclipse自带的jdk]
如果是的话,运行的时候是否带上了包名?以及编译带包名的文件时是否加了参数 -d . ?我这里在eclipse下运行正常!LZ可以试试C:\>javac -d . JavaDemo.javaC:\>java com.w1520.JavaDemo.JavaDemo这样应该就没问题了。
感觉应该是给myeclipse添加jdk的时候出错了,求添加方法