Error: Could not find or load main class java

  • Onderwerp starter Onderwerp starter KeD
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

KeD

Gebruiker
Lid geworden
23 mrt 2012
Berichten
6
Hoi

ik heb een programma geschreven om een simulatiestudie te kunnen uitvoeren voor mijn thesis.
Nu heb ik voor mijn gui en main klasse veel code gekopieerd uit een eerder project die volledig werkte.
Ik heb hem gisteren voor het eerst volledig laten runnen (heb al verschillende methodes apart getest) en ik kreeg de fout 'Error: Could not find or load main class java'.
Ik heb de fout zitten googelen en zelf zitten zoeken wat er fout kan zijn maar ik vind het echt niet.

Voor de volledigheid hierbij de java file die de gui en de main klasse bevat (ik heb de code bij de buttonhandlers weggelaten, als ik ze in commentaar zet helpt het niet dus daar ligt het probleem volgens mij niet) :
Code:
package thesis_versie_1;

import java.awt.event.*;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.*;
import DbInterface.*;
import jxl.write.WriteException;

public class Gui extends javax.swing.JPanel {
    
    private Editing editing = new Editing ();
    private Policies policies = new Policies ();
    private Calculations calculations = new Calculations ();
    private outputWriter output = new outputWriter ();
    private dbReader input = new dbReader ();
    
    public int run; //houdt count bij van run (200 uit te voeren). Public want wordt meegegeven bij output

    /** Creates new form Gui - constructor*/ 
    public Gui() {
    }
    
    public void init ()
    {
         try {
            java.awt.EventQueue.invokeAndWait(new Runnable() {
                public void run() {
                    initComponents();
                }
            });
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">       
                   
    private void initComponents() {... }// </editor-fold>                        

private void analyzeButtonActionPerformed(java.awt.event.ActionEvent evt) { 
}                                             

private void numberPTextActionPerformed(java.awt.event.ActionEvent evt) {                                            
}                                           

private void jRadioButtonSActionPerformed(java.awt.event.ActionEvent evt) {                                              
}                                             

private void jRadioButtonCActionPerformed(java.awt.event.ActionEvent evt) {                                              
}                                             

    // Variables declaration - do not modify                     
    private javax.swing.JButton analyzeButton;
    private javax.swing.ButtonGroup buttonGroupDatabases;
    private javax.swing.JRadioButton databaseCButton;
    private javax.swing.JRadioButton databaseSButton;
    private javax.swing.JLabel itemsPLabel;
    private javax.swing.JLabel itemsSLabel;
    public javax.swing.JTextField numberPText;
    public javax.swing.JTextField numberSText;
    private javax.swing.JLabel pickingLabel;
    private javax.swing.JComboBox pickingList;
    private javax.swing.JLabel storageLabel;
    private javax.swing.JComboBox storageList;
    // End of variables declaration                   


    public static void main(String[] args) {
        //... Create an initialize the applet.
        Gui gui = new Gui();
        gui.setSize(100, 100);
        gui.init();         // Needed if overridden in applet

        //... Create a window (JFrame) and make applet the content pane.
        JFrame window = new JFrame("Warehouse storage policy analysis");
//        window.add(new JScrollPane(theApplet), BorderLayout.CENTER );
        window.setContentPane(gui);

        // window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        window.addWindowListener( //Register an anonymous class as a listener.
             new WindowAdapter() {
                public void windowClosing( WindowEvent e )
                {
                   System.exit( 0 );
                }
             }
        );
        window.pack();              // Arrange the components.
        window.setVisible(true);    // Make the window visible.
    }//END main
} // END GUI class

Alvast bedankt voor de hulp!
 
*Edit

Ik heb het programma in de bibliotheek op een andere pc laten runnen en nu krijg ik de volgende fout:

java.lang.NoClassDefFoundError: java
Caused by: java.lang.ClassNotFoundException: java
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: java. Program will exit.
Exception in thread "main" Java Result: 1

Opzoekingswerk op het internet leert mij dat dit problemen zijn die veel tijd in beslag kunnen nemen en veroorzaakt worden door een verkeerde classpath, maar ik vrees dat ik ze alleen niet zal kunnen oplossen. Kan iemand mij op weg helpen?
 
stel dat je deze toevoegd en playground wijzigt naar gui
Code:
package be.unknow.game;
	import javax.swing.JFrame;
import be.unknow.*;
	public class Start extends JFrame{
	  private static final long serialVersionUID = -7537124451633031769L;
	    public Start() {
			add(new Playground());
		    setTitle("Game");
		    setDefaultCloseOperation(EXIT_ON_CLOSE);
		    setSize(22*25+10,22*25+20);
		    setLocationRelativeTo(null);
		    setVisible(true);
	  }
	  public static void main(String[] args) {
	      new Start();
	  }
	}
 
Bedankt voor het antwoord!

Ik had echter vandaag nog verder gezocht en in ten einde raad heb ik dan een nieuw project aangemaakt, waarna ik alle code in het nieuwe project heb geplaatst.
Raar maar waar... het werkte gewoon!

Java blijft op sommige vlakken soms toch nog een echt mysterie voor mij...
 
u moet denken aan een vergelijkbare cache waarbij uw oude files niet verdwijnen als deze niet overschreven worden dus het programma zal draaien op de oude code dus moet je een clean voorzien.

Ik ga er vanuit dat u met een veredelde editor zult werken zoals eclipse of netbeans
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan