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

windows7中,editplus配置javac和java没问题,jdk配置也没问题,编译通过,运行报以上错误,求解???
public class Welcome
{
  public static void main(String[] args)
  {
  String[] greeting = new String[3];
  greeting[0] = "Welcome to Core Java";
  greeting[1] = "by Cay Horstmann";
  greeting[2] = "and Gary Cornell";

  for (String g : greeting)
  System.out.println(g);
  }
}

---------- run ----------
java.lang.NoClassDefFoundError: Welcome
Caused by: java.lang.ClassNotFoundException: Welcome
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:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: Welcome. Program will exit.
Exception in thread "main" 
Output completed (0 sec consumed) - Normal Termination

windows7中,editplus配置javac和java没问题,jdk配置也没问题,编译通过,运行报以上错误,求解???

------解决方案--------------------
很可能是你classpath和path设置的问题 ,classpath要包含当前目录,也就是要有一个.
------解决方案--------------------
其他程序都这样吗?
------解决方案--------------------
ClassNotFoundException
没找到class文件

你的java javac没有问题,证明你的path至少是配置正确了,问题出现在classpath配置上。

JVM默认会先从classpath里查找class文件,如果classpath未配置当前目录,是不会查找当前目录的class文件的。