Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    111

    NoClassDefFoundError

    Ciao a tutti, ho realizzato un intero progetto in Eclipse FUNZIONANTE dall'ambiente Eclipse ma non riesco a lanciarlo da riga di comando.
    Ecco le mie due variabili d'ambiente:

    codice:
    PATH:%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Programmi\ATI Technologies\ATI Control Panel;C:\Programmi\Java\jdk1.5.0_09\bin;c:\Programmi\Microsoft SQL Server\90\Tools\binn\
    
    CLASSPATH:.;C:\Programmi\Apache Software Foundation\Tomcat 5.5\common\lib\xerces.jar;C:\Programmi\Apache Software Foundation\Tomcat 5.5\common\lib\activation.jar\C:\Programmi\Apache Software Foundation\Tomcat 5.5\common\lib\mail.jar;C:\Programmi\Apache Software Foundation\Tomcat 5.5\common\lib\soap.jar;C:\Programmi\Apache Software Foundation\Tomcat 5.5\common\lib\jdom.jar
    Ecco il semplice file di avvio, si chiama Main.java e sta dentro la cartella /client nel desktop.
    All'interno di questa cartella ci sono i .class compilati del progetto funzionante e i sorgenti java.
    Se ricompilo da riga di comando il file Main.java (che compilava con successo in Eclipse) mi dice che non riesce a trovare la classe FinestraManager.class (ma FinestraManager è già dentro la cartella /client con tutti gli altri .class), e se invece provo a fare java Main mi da' l'errore NoClassDefFoundError (wrong name: client/Main).
    Perché???
    Ecco il codice.

    codice:
    //Classe principale che fa avviare il progetto
    
    package client;
    
    import javax.swing.*;
    
    public class Main implements Runnable {
    
    	static FinestraManager fm;
    	
    	public void run() {
    		String os = System.getProperty("os.name");
    		fm = new FinestraManager();
    		try {
    			if (os.contains("Windows")) {
    				UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
    		        SwingUtilities.updateComponentTreeUI(fm);	
    			}
    	    } catch (Exception e) {
    	    	JOptionPane.showMessageDialog(null, "Errore durante il caricamento dello stile dei componenti, verrà applicato lo stile di default", "Errore", JOptionPane.ERROR_MESSAGE);
    	    }
    		
    	}
    	
    	public static void main(String[] args) {
    		SwingUtilities.invokeLater(new Main());
    	}
    
    }

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    java client.Main
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    111
    Si infatti...
    Ora però ho un problema diverso, questo:

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328

    Moderazione

    I titoli! Devono essere esplicativi del contenuto della discussione.
    Va bene le proprietà di sintesi, ma così è un po' troppo.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da replika82
    Ora però ho un problema diverso
    Controlla e verifica bene il classpath. Nel post iniziale l'hai riportato ma c'è un errore (uno \ invece di ; ).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    111
    :quote: :rollo:

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    111
    Però come posso fare per compilare?
    Se per lanciare mi devo spostare fuori dalla directory "client" e da riga dicomando digitare:
    java client.Main
    in teoria per compilare devo scrivere javac client.Main.java ma è sbagliato, e se invece entro dentro la cartella "client" e digito:
    javac Main
    non mi riconosce le classi da me create (che però stanno sulla stessa directory)...

    Infatti mi dice che non riconosce FinestraManager.class che è una classe che viene lanciata da Main.class

  8. #8
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da replika82
    Però come posso fare per compilare?
    Se per lanciare mi devo spostare fuori dalla directory "client" e da riga dicomando digitare:
    java client.Main
    in teoria per compilare devo scrivere javac client.Main.java ma è sbagliato, e se invece entro dentro la cartella "client" e digito:
    javac Main
    non mi riconosce le classi da me create (che però stanno sulla stessa directory)...

    Infatti mi dice che non riconosce FinestraManager.class che è una classe che viene lanciata da Main.class
    javac client\Main.java
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    4
    scusate se mi riallaccio a questo post un po' datato....
    ma non riesco a risolvere il problema quasi uguale al precedente
    ho girato e riguardato tutto100 volte senza risultato, ho googolato
    all'infinito e provato di tutto ma non riesco...
    e' il solito primo programma java
    l'errore e' il seguente:

    Exception in thread "main" java.loang.NoClassDefFoundError: Desktop\java\CiaoMondo
    <wrong name: CiaoMondo>
    at java.lang.ClassLoader.defineClass1<Native Method>
    e prosegue cosi con altre classi ma finisce tutti quessti messaggi con <Unknow Source>
    il prog da eseguire e' il seguente:

    class CiaoMondo
    {
    public static void main(String[] args)
    {
    System.out.print ("Ciao mondo, sono il primo programma in Java ");
    System.out.println ("di " + args[0] + " " + args[1]);
    }
    }


    il programmino e' in una cartella sul desktop\java
    compilo cn javac Desktop\CiaoMondo.java
    e tutto va bene, crea il CiaoMondo.class
    poi:
    java Desktop\CiaoMondo
    e mi da quella sfilza di errori

    uso windows7
    ho provato a settare le PATH e le CLASSPATH in ogni modo, quest sono le mie ultime impostazioni:
    in variabili dell'utente: PATH .;C:\Program Files\Java\jdk1.6.0_22\bin
    in variabile del sistema: CLASSPATH .;C:\Programmi\Java\jre6\lib\ext\QTJava.zip;C:\Pro gram Files\Java\jdk1.6.0_22\bin
    PATH .;C:\Programmi\Java\jre6\lib\ext\QTJava.zip;C:\Pro gram Files\Java\jdk1.6.0_22\bin
    qanche mettendo Programmi al posto di Program Files, l'errore e' lo stesso...
    ho fatto riferimento a nche a questo: http://www.dis.uniroma1.it/~figest/problemi.html
    e l'errore sembra essere solo il nome e l'estensione che uso... bho non ci capisco piu' niente..
    dove sbaglio??!??!?!??!?!?

  10. #10
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da mw2
    java Desktop\CiaoMondo
    e mi da quella sfilza di errori
    CiaoMondo non sta nel package Desktop (non c'è alcuna dichiarazione di package nel tuo codice), eseguirlo in questo modo è sbagliato. Ed eventualmente ci sarebbe la cartella java in mezzo, non puoi saltarla...
    Posizionati nella cartella in cui c'è CiaoMondo.class ed eseguilo normalmente da lì...

    Ad ogni modo gli UP sono vietati
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.