Executer une classe qui contient une ou des classes annonymes

filemro3b Messages postés 5 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 7 mars 2009 - 7 mars 2009 à 11:25
 Utilisateur anonyme - 9 mars 2009 à 07:59
j ai un simple programme hello world avec une interface graphique
le probleme est que ca compile sans problemes
mais quand j'essaye de l excuter en ligne de cmd ca genere une erreur de type "java.lang.NoClassDefFoundError"
j ai compris suite a l'explication de Dark sideous dans le sujet "classpath" qui si je supprime la clase annonyme qu'il contient le programme s'exécute sans PB
j aimerais bien savoir comment executer une classe qui contient une inner class annonyme
voici le CS telechargé de java.sun.com
 */import javax.swing.*;       

public class HelloWorldSwing {
    /**
     * Create the GUI and show it.  For thread safety,
     * this method should be invoked from the
     * event-dispatching thread.
     */
    private static void createAndShowGUI() {
        //Create and set up the window.
        JFrame frame = new JFrame("HelloWorldSwing");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        //Add the ubiquitous "Hello World" label.
        JLabel label = new JLabel("Hello World");
        frame.getContentPane().add(label);

        //Display the window.
        frame.pack();
        frame.setVisible(true);
    }

    public static void main(String[] args) {
        //Schedule a job for the event-dispatching thread:
        //creating and showing this application's GUI.
        javax.swing.SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                createAndShowGUI();
            }
        });
    }
}
merci beaucoup

3 réponses

benmor Messages postés 49 Date d'inscription jeudi 14 avril 2005 Statut Membre Dernière intervention 27 novembre 2011 9
7 mars 2009 à 13:53
Quelle ligne de commande utilise-tu?

java -cp . HelloWorldSwing ??
0
filemro3b Messages postés 5 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 7 mars 2009
7 mars 2009 à 15:40
salut tout le monde

j'utilise tout simplement

java HelloWorldSwing

et meme si j'utilise l'option -cp ou -classpath ca change rien
jai googlé un peu et j ai trouvé un article qui parle d'un fichier qu'on peut créer dans lequel on peut mettre les noms de toutes les classes à executer simulanement separées par des espaces ; j'ignore le type de ce fichier ; son extension et si ca s'applique à mon cas !!

merci d'avance .
0
Utilisateur anonyme
9 mars 2009 à 07:59
Salut,

As tu listé ton dossier de travail pour vérifier la présence des 2 classes HelloWorldSwing.class et HelloWorldSwing$1.class  après compilation ?

...\ Dan /...
0
Rejoignez-nous