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

    [java] impostare classpath SO: mac

    ciao a tutti

    Ho un problema con il classpath. Premesso che mi trovo su un SO mac osx 10.5 quando vado a eseguire il mio programma, sia da terminale che con eclipse, mi compare il seguente messaggio d'errore:

    codice:
    Exception in thread "main" java.lang.NoClassDefFoundError: MoneyManager (wrong name: MoneyManager/MoneyManager)
    credo sia un problema di classpath ma non riesco a risolverlo.

    Ho modificato il file bashrc aggiungendo i seguenti comandi:
    codice:
    export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
    export PATH=$PATH:JAVA_HOME/bin
    export CLASSPATH=$CLASSPATH:./:/System/Library/Java/Extensions/:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/
    ma nulla

  2. #2
    Utente di HTML.it L'avatar di Pastore12
    Registrato dal
    Oct 2008
    Messaggi
    1,051
    Sei sicuro che non ci sia qualche altra rogna? Mi sembra strano che da eclipse venga fuori un errore di questo tipo...

    Ti va di fare un piccolo test?
    Se metti un metodo main nella classe MoneyManager, e provi ad eseguirlo (da eclipse), funziona?

    Se stai lavorando con eclipse, MoneyManager è una classe del progetto che "lanci"?
    Oppure appartiene a una libreria esterna?

    Ciao!
    "Ethics are to me something private. Whenever you use it as an argument for why somebody_else should do something, you’re no longer being ethical, you’re just being a sanctimonious dick-head"
    Linus Torvalds

  3. #3
    si MoneyManager è una classe del package MoneyManager che contiene altre classi ma il main si trova nella classe MoneyManager.

    Non so proprio dove sbattere la testa, sinceramente ho dato per scontato si trattasse del classpath ma ora non so più che dire!
    La classe contenete il main può avere lo stesso nome del package? potrebbe essere quello? ma mi pare di averla fatta altre volte una cosa del genere....

  4. #4
    Utente di HTML.it L'avatar di Pastore12
    Registrato dal
    Oct 2008
    Messaggi
    1,051
    a parte il fatto che i package dovrebbero essere scritti in minuscolo, non mi viene in mente nulla. Di solito in casi come questi si procede per gradi:

    1. fai il backup del progetto. Cancella l'esistente. Crea un nuovo progetto ripristinando i dati salvati.

    Se non basta

    2. Riavvia Eclipse

    Se ancora non basta ripeti il passo 1.

    Se ancora non basta riavvia il sistema operativo e riparti dal passo 1.

    Aspetta.. prima di tutto controlla anche le proprietà del progetto. Ce ne è una che riguarda il percorso di generazione java. nella scheda relativa dovrebbe riportare il percorso della cartella src. Se questo non è settato correttamente (di solito viene fatto in automatico...) Eclipse non compila neppure.

    Ps. ho controllato: avere nomeClasse = nomePacchetto = nomeProgetto è ammesso
    "Ethics are to me something private. Whenever you use it as an argument for why somebody_else should do something, you’re no longer being ethical, you’re just being a sanctimonious dick-head"
    Linus Torvalds

  5. #5
    si ma il problema non credo sia di eclipse perchè lo stesso errore me lo dà anche se eseguo da teminale....

  6. #6
    ho risolto, il problema era nel main non c'entrava nulla il classpath.

    Non avevo messo String args[] come parametro della funzione main, non credevo minimamente fosse obbligatorio....

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.