Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di joker06
    Registrato dal
    Dec 2006
    Messaggi
    782

    [JAVA] errore nel caricamento della classe principale

    Ciao, ho cominciato ad avvicinarmi a java da poche settimane,

    stavo facendo qualche esercizio abbastanza semplice.

    Creato una classe main che richiama una classe con alcuni metodi per la stampa dell'ora.

    le 2 classi si trovano nello stesso package.
    Testo ancora sotto dos ho quindi fatto: javac *.java e java Class_principale
    pero' mi dice che non riesce a caricarla

    Ho provato a lanciare la classe da eclipse (tasto dx run as java ...) e funziona correttamente.
    Fino ad ora da dos avevo compilato solo singoli file devo fare qualcosa di diverso?

  2. #2
    Da dos devi indicare anche il package (meglio dire il nome assoluto) della classe che contiene il main
    Es java mioPackage.MiaClasse

  3. #3
    Utente di HTML.it L'avatar di joker06
    Registrato dal
    Dec 2006
    Messaggi
    782
    Mi scuso con i moderatori perchè non avevo proprio visto la sezione, era troppo tardi xD

    @francesco.muia ho provato ad aggiungere il package ma continua a dare lo stesso errore.
    il package si chiama Time, ho provato quindi a fare dopo il javac *.java, java Time.Time_Client ma ancora non trova la classe primaria può servirti qualche info in più per trovare il problema?

  4. #4
    allora oltre ad un problema di nome assoluto hai anche un problema di classpath.
    Allora (se come suppongo non hai cambiato la variabile globale CLASSPATH).
    Da dos ti devi posizionare nella cartella padre della cartella Time (chiamiamola BABBO....).
    Poi da dentro babbo dai il comando java -cp .; Time.Time_Client (l'opzione -cp serve a settare il class path della jvm).
    Accertati cmq che con il primo comando dentro la cartella Time ci siano i file .class

  5. #5
    Utente di HTML.it L'avatar di joker06
    Registrato dal
    Dec 2006
    Messaggi
    782
    ok grazie funziona.

    potresti però spiegarmi meglio il funzionamento?

    io ho:
    - Timing
    -- Time
    --- Time_Client.java e .class (è la main class)
    --- Time.java e . class

    Si non avevo settato il file classpath però come mi hai detto di fare te funziona. Ora quindi tutte le volte che avro dei richiami devo fare questo comando? oppure meglio settare nel .classpath
    codice:
    <?xml version="1.0" encoding="UTF-8"?>
    <classpath>
    	<classpathentry kind="src" path=""/> ---> DEVO SETTARE QUESTA VARIABILE?? SE SI FINO ALLA CARTELLA PADRE ESCLUDENDO QUELLA DEL PACKAGE?
    	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    	<classpathentry kind="output" path=""/>
    </classpath>
    Se avessi (è possibile) più package? non vorrei romperti troppo

    Grazie comunque per l aiuto

  6. #6
    Allora non confondere i file di configurazione del tuo IDE (Eclipse) con quello che effettivamente bisogna fare per compilare ed eseguire un programma java.
    Quello da te linkato è il file .classpath che eclipse usa per la sua compilazione, e non va toccato e sopratutto il comandi java e javac non leggono assolutamente quel file.
    Il concetto di classpath sta ad indicare alla jvm dove si trovano i tuoi file .java e .class.
    Per quanto riguarda il numero di package ne puoi avere quanti ne vuoi tanto al comando java interessa solo sapere qual'è la root di tutti i package (ricordi il . del comando di prima) e il full class name della classe che contiene un main

  7. #7
    Utente di HTML.it L'avatar di joker06
    Registrato dal
    Dec 2006
    Messaggi
    782
    Grazie mille per le spiegazioni, proverò a fare altre prove e cercare un po nelle guide per approfondire questa cosa

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 © 2024 vBulletin Solutions, Inc. All rights reserved.