title: java.lang.NoClassDefFoundError when i run java file from terminal
body: <p>I am a java newbie. I have been using Eclipse to test a simple java class (named NewHelloWorld) and it runs fine in the console. When I try to do the same thing from a terminal, it compiles properly (creates a HelloWorld.class without giving any error) , but then <code>java NewHelloWorld</code> shows the following error </p>
  
  <pre><code>Exception in thread "main" java.lang.NoClassDefFoundError: NewHelloWorld (wrong name: org/kodeplay/kodejava/NewHelloWorld)
  at java.lang.ClassLoader.defineClass1(Native Method)
  at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
  at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
  at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
  at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
  at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
      Could not find the main class: NewHelloWorld. Program will exit.
  </code></pre>
  
  <p>I also tried <code>java -classpath . NewHelloWorld</code> but that doesnt work as well giving the same error. </p>
  
  <p>These are the values of the environment variables:</p>
  
  <pre><code>PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
  JAVA_HOME="/usr/lib/jvm/java-6-openjdk"
  CLASSPATH="/usr/lib/jvm/java-6-openjdk/lib:."
  </code></pre>
  
  <p>Is anything else required or am I missing anything here? 
  Thanks</p>
  
  <p>PS: using Ubuntu 10.04 desktop</p>