Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Esecuzione classi, domanda banale

    Utilizzo un ide per sviluppare le classi e lanciando il main ottengo il risultato desiderato.
    Volendo però lanciare le classi direttamente da riga comando senza usare l'ide mi viene restituito il seguente messaggio d'errore:

    Exception in thread "main" java.lang.NoClassDefFoundError: c:\source\prove\Prova

    ovviamente il file Prova.class si trova nella cartella indicata e la variabile classpath è inizializzata con c:\source\prove.
    cosa ho dimenticato?

    grazie a chiunque mi possa aiutare

  2. #2
    come lanci il comando di esecuzione?

    prova a posizionarti in c:\source\prove\Prova e ad eseguire:

    java -classpath . Prova
    Ivan Venuti
    Vuoi scaricare alcuni articoli sulla programmazione, pubblicati su riviste di informatica? Visita http://ivenuti.altervista.org/articoli.htm. Se vuoi imparare JavaScript leggi il mio libro: http://www.fag.it/scheda.aspx?ID=21754 !

  3. #3
    Prova è il nome della classe.
    ho provato a fare come dici tu, mi sono posizionato in prove e ho scritto

    java -classpath . Prova

    il risultato è il seguente:

    Exception in thread "main" java.lang.NoClassDefFoundError: Prova (wrong na
    ove/Prova)
    at java.lang.ClassLoader.defineClass0(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java :403)
    at java.security.SecureClassLoader.defineClass(Secure ClassLoader.j
    1)
    at java.net.URLClassLoader.defineClass(URLClassLoader .java:248)
    at java.net.URLClassLoader.access$1(URLClassLoader.ja va:216)
    at java.net.URLClassLoader$1.run(URLClassLoader.java: 197)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.j ava:191)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:2 80)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launche r.java:275)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:2 37)

    un po' diverso da prima ma purtroppo...

  4. #4
    ma la classe si chiama Prova?
    Ed è l'unica classe pubblica definita nel file Prova.java?
    Ivan Venuti
    Vuoi scaricare alcuni articoli sulla programmazione, pubblicati su riviste di informatica? Visita http://ivenuti.altervista.org/articoli.htm. Se vuoi imparare JavaScript leggi il mio libro: http://www.fag.it/scheda.aspx?ID=21754 !

  5. #5
    esatto.
    come hai settato la tua classpath?
    temo sia li l'errore

  6. #6
    se usi il comando:

    java -classpath . Prova

    usi il classpath specificato. Posta i sorgenti della classe. C'è qualcosa che non va...
    Ivan Venuti
    Vuoi scaricare alcuni articoli sulla programmazione, pubblicati su riviste di informatica? Visita http://ivenuti.altervista.org/articoli.htm. Se vuoi imparare JavaScript leggi il mio libro: http://www.fag.it/scheda.aspx?ID=21754 !

  7. #7
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Io ho come l'impressione che la classe Prova abbia una intestazione di package.
    Ovvero, una delle prime righe di codice, sarà quasi sicuramente qualcosa come:
    codice:
    package <qualcosa>;
    Se è così, allora ti devi posizionare nella directory che contiene quella con il nome definito in package e lanciare la classe in questo modo:
    codice:
    java qualcosa.Prova
    Nel tuo caso dovresti posizionarti in C:\source e digitare
    codice:
    java prove.Prova
    Altri problemi di classpath si risolvono con l'indicazione data sopra, ovvero il parametro -classpath.

    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

  8. #8
    Hai ragione, funziona!!!
    sei un mito.
    grazie 1000

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.