title: Can't run multiple-class program from command line using packages
body: <p>This is my first time posting -- I found similar issues but not anything concerning this issue directly. This sounds very simple but I'm not quite sure why this is occurring.  My program runs beautifully in Eclipse but not from the command line.  I have a few classes within a <em>simpletree</em> package.</p>
  
  <p>Here's <strong>BinaryTree.java</strong>:</p>
  
  <pre><code>    package simpletree;
      import java.io.*;
  
      public class BinaryTree implements Serializable {
         // Automatically generated UID
         private static final long serialVersionUID = -3124224583476129954L;
  
         BinaryTree leftNode; // left node
         BinaryTree rightNode; // right node  
  
         // some code
      }
  
      class Tree implements Serializable {
      private static final long serialVersionUID = 6591795896216994405L;
      private BinaryTree root;
  
      // some code    
      }</code></pre>
  
  <p>And <strong>Program1Test.java</strong>:</p>
  
  <pre><code>    package simpletree;
  
      public class Program1Test {
      public static void main(String[] args) {
          Tree tree = new Tree();
                  // some code
      }
      }</code></pre>
  
  <p><strong>Here's the problem</strong>: doing this from inside <em>simpletree</em> compiles fine:</p>
  
  <pre><code>javac BinaryTree.java Program1Test.java
  </code></pre>
  
  <p>When I do this:</p>
  
  <pre><code>java Program1Test
  </code></pre>
  
  <p>I get this:</p>
  
  <pre><code>Exception in thread "main" java.lang.NoClassDefFoundError: Program1Test (wrong n
  ame: simpletree/Program1Test)
      at java.lang.ClassLoader.defineClass1(Native Method)
      at java.lang.ClassLoader.defineClassCond(Unknown Source)
      at java.lang.ClassLoader.defineClass(Unknown Source)
      at java.security.SecureClassLoader.defineClass(Unknown Source)
      at java.net.URLClassLoader.defineClass(Unknown Source)
      at java.net.URLClassLoader.access$000(Unknown Source)
      at java.net.URLClassLoader$1.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.net.URLClassLoader.findClass(Unknown Source)
      at java.lang.ClassLoader.loadClass(Unknown Source)
      at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
      at java.lang.ClassLoader.loadClass(Unknown Source)
  Could not find the main class: Program1Test.  Program will exit.
  </code></pre>
  
  <p>Any ideas? I have my classpath set correctly and I've tried running with a package (simpletree.Program1Test) and without.</p>