(Risolto) (Java) errore in fase di compilazione

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Scrivi risposta
Avatar utente
preben
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1188
Iscrizione: giovedì 12 luglio 2007, 20:58

(Risolto) (Java) errore in fase di compilazione

Messaggio da preben »

Ho scritto la seguente classe per esercizio:

Codice: Seleziona tutto

public class DemoStatic {

    private int number;

    // DemoStatic(): costruttore predefinito
    public DemoStatic(int n) {
	number = n;
    }

    // print1(): metodo di classe
    static void print1(DemoStatic v) {
	System.out.println(v.number);
    }

    // print2(): metodo di istanza
    void print2() {
	System.out.println(number);
    }
}
Durante la compilazione non ci sono errori.

Poi ho scritto quest'altra per utilizzare la precedente:

Codice: Seleziona tutto

public class ProvaDemoStatic {

    // main(): punto di ingresso dell'applicazione
    public static void main(String[] args) {

	DemoStatic s = new DemoStatic(5);
	DemoStatic t = new DemoStatic(10);

	DemoStatic.print1(t);
	s.print2();
    }
}
Al momento della compilazione mi dà il seguente errore:

Codice: Seleziona tutto

1. ERROR in ProvaDemoStatic.java (at line 10)
        DemoStatic s = new DemoStatic(5);
        ^^^^^^^^^^
DemoStatic cannot be resolved to a type
----------
2. ERROR in ProvaDemoStatic.java (at line 10)
        DemoStatic s = new DemoStatic(5);
                           ^^^^^^^^^^
DemoStatic cannot be resolved to a type
----------
3. ERROR in ProvaDemoStatic.java (at line 11)
        DemoStatic t = new DemoStatic(10);
        ^^^^^^^^^^
DemoStatic cannot be resolved to a type
----------
4. ERROR in ProvaDemoStatic.java (at line 11)
        DemoStatic t = new DemoStatic(10);
                           ^^^^^^^^^^
DemoStatic cannot be resolved to a type
----------
5. ERROR in ProvaDemoStatic.java (at line 13)
        DemoStatic.print1(t);
        ^^^^^^^^^^
DemoStatic cannot be resolved
Vorrei sapere, per piacere cosa c'è che di sbagliato.

Ciao e grazie!
Ultima modifica di preben il lunedì 1 ottobre 2007, 23:24, modificato 1 volta in totale.
Accusare gli altri delle proprie disgrazie è conseguenza della nostra ignoranza!
Avatar utente
Arcovoltaico77
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1082
Iscrizione: giovedì 26 luglio 2007, 9:52

Re: (Java) errore in fase di compilazione

Messaggio da Arcovoltaico77 »

le due classi fanno parte dello stesso package?

nella seconda hai messo l' import della prima?
" Usare Linux é come mangiare dalla suocera, mangi bene e non spendi nulla! "
Avatar utente
preben
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1188
Iscrizione: giovedì 12 luglio 2007, 20:58

Re: (Java) errore in fase di compilazione

Messaggio da preben »

Sono entrambe nella stessa cartella.
Non ho messo l'import della prima, perchè credo non serva, dal momento che sono sulla stessa cartella.
Hai qualche idea?

Ciao e grazie!
Accusare gli altri delle proprie disgrazie è conseguenza della nostra ignoranza!
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: (Java) errore in fase di compilazione

Messaggio da Massimo S. »

belin, se sati usando javac, credo che le devi compilare insieme con lo stesso comando per farsi che si vedano a vicenza
Avatar utente
preben
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1188
Iscrizione: giovedì 12 luglio 2007, 20:58

Re: (Java) errore in fase di compilazione

Messaggio da preben »

Ciao Massimo, mi puoi dire come faccio a compilarle con lo stesso comando?
Grazie!
Accusare gli altri delle proprie disgrazie è conseguenza della nostra ignoranza!
Avatar utente
Bobby
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1978
Iscrizione: lunedì 15 gennaio 2007, 17:29

Re: (Java) errore in fase di compilazione

Messaggio da Bobby »

il comando da usare è:

Codice: Seleziona tutto

javac -cp /tuo percorso fino alla cartella con i file.java/ ProvaDemoStatic
il compilatore inizia a compilare la classe main, quando trova il riferimento a DemoStatic si va a cercare la classe nei suoi percorsi compreso quello che gli hai dato.
The time is out of joint; - O cursed spite,
That even I was born to set it right! -
                                            Hamlet
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: (Java) errore in fase di compilazione

Messaggio da Massimo S. »

belin ha scritto: Ciao Massimo, mi puoi dire come faccio a compilarle con lo stesso comando?
Grazie!
Credo che basta che metti alla fine del comando tutti i file .java che devi compilare separati da spazi

Oppure per compilare solo ProvaDemoStatic dopo aver compilato DemoStatic puoi dare come dice Robby solo che IMHO è più corretto cosi

Codice: Seleziona tutto

javac -cp /tuo percorso fino alla cartella con i file .class/ ProvaDemoStatic.java
Oppure usa un IDE come Eclipse o NetBeans
Avatar utente
Bobby
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1978
Iscrizione: lunedì 15 gennaio 2007, 17:29

Re: (Java) errore in fase di compilazione

Messaggio da Bobby »

Massimo S. ha scritto: Oppure usa un IDE come Eclipse o NetBeans
la soluzione dei pigri come me!!  ;)
The time is out of joint; - O cursed spite,
That even I was born to set it right! -
                                            Hamlet
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: (Java) errore in fase di compilazione

Messaggio da Massimo S. »

Bobby ha scritto: la soluzione dei pigri come me!!  ;)
La pigrizia è la principale virtù del programmatore!  ;D
Avatar utente
Bobby
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1978
Iscrizione: lunedì 15 gennaio 2007, 17:29

Re: (Java) errore in fase di compilazione

Messaggio da Bobby »

Massimo S. ha scritto:
Bobby ha scritto: la soluzione dei pigri come me!!  ;)
La pigrizia è la principale virtù del programmatore!  ;D
vangelo! non sai che programmi ho scritto pur di ridurre il mio lavoro!  ;)
The time is out of joint; - O cursed spite,
That even I was born to set it right! -
                                            Hamlet
Avatar utente
preben
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1188
Iscrizione: giovedì 12 luglio 2007, 20:58

Re: (Java) errore in fase di compilazione

Messaggio da preben »

Ciao ragazzi, intanto vi ringrazio per avermi risposto.
Ho fatto un pò di prove con il comando

Codice: Seleziona tutto

javac -cp /tuo percorso fino alla cartella con i file .class/ ProvaDemoStatic.java
ma mi dà sempre lo stesso errore:

Codice: Seleziona tutto

incorrect classpath: ./DemoStatic.class/
----------
1. ERROR in ProvaDemoStatic.java (at line 10)
        DemoStatic s = new DemoStatic(5);
        ^^^^^^^^^^
DemoStatic cannot be resolved to a type
----------
2. ERROR in ProvaDemoStatic.java (at line 10)
        DemoStatic s = new DemoStatic(5);
                           ^^^^^^^^^^
DemoStatic cannot be resolved to a type
----------
3. ERROR in ProvaDemoStatic.java (at line 11)
        DemoStatic t = new DemoStatic(10);
        ^^^^^^^^^^
DemoStatic cannot be resolved to a type
----------
4. ERROR in ProvaDemoStatic.java (at line 11)
        DemoStatic t = new DemoStatic(10);
                           ^^^^^^^^^^
DemoStatic cannot be resolved to a type
----------
5. ERROR in ProvaDemoStatic.java (at line 13)
        DemoStatic.print1(t);
        ^^^^^^^^^^
DemoStatic cannot be resolved
----------
Se avete qualche altra idea...
Ciao e grazie ancora.
Accusare gli altri delle proprie disgrazie è conseguenza della nostra ignoranza!
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: (Java) errore in fase di compilazione

Messaggio da Massimo S. »

Dal messaggio

Codice: Seleziona tutto

incorrect classpath: ./DemoStatic.class/
deduco che hai messo come classapath  ./DemoStatic.class/
Non va bene, devi mettere la cartella che contiene i file .class, ad esempio se DemoStatic.class è nella dir corrente metti solo

Codice: Seleziona tutto

javac -cp . ProvaDemoStatic.java
Avatar utente
preben
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1188
Iscrizione: giovedì 12 luglio 2007, 20:58

Re: (Java) errore in fase di compilazione

Messaggio da preben »

Niente da fare; rimane sempre lo stesso errore.
Il problema può essere legato alle variabi di path (java home e classpath)?

Ciao e grazie!
Accusare gli altri delle proprie disgrazie è conseguenza della nostra ignoranza!
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: (Java) errore in fase di compilazione

Messaggio da Massimo S. »

Facciamo così, posta la esatta struttura delle tue directory e di tutti i file inclusi (non di tutto l'hd, solo della parte relativa al tuo progetto java)
e posta i comandi esatti che dai per compilare.

Forse fai prima se comprimi la cartella in un .zip e l'alleghi
Avatar utente
preben
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1188
Iscrizione: giovedì 12 luglio 2007, 20:58

Re: (Risolto) (Java) errore in fase di compilazione

Messaggio da preben »

Ciao Massimo!
Innanzittutto ti ringrazio per l'aiuto che mi hai dato.
Cmq, stanco di provare e riprovare  >:(, ho riformattato il sistema, istallato java 6 da shell, ed ora compila senza problemi.

Ciao e grazie ancora!
Accusare gli altri delle proprie disgrazie è conseguenza della nostra ignoranza!
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: (Risolto) (Java) errore in fase di compilazione

Messaggio da Massimo S. »

Ma  ... forse il javac del java6 è più elastico nella sintassi  :-\

Comunque se devi fare sul serio con java ti consiglio sempre di usare un IDE come Eclipse o NetBeans, oppure se sei un purista della riga di comando usa almeno ANT che è una specie del make del C per java
Avatar utente
Bobby
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1978
Iscrizione: lunedì 15 gennaio 2007, 17:29

Re: (Risolto) (Java) errore in fase di compilazione

Messaggio da Bobby »

Massimo S. ha scritto: Ma  ... forse il javac del java6 è più elastico nella sintassi  :-\

Comunque se devi fare sul serio con java ti consiglio sempre di usare un IDE come Eclipse o NetBeans, oppure se sei un purista della riga di comando usa almeno ANT che è una specie del make del C per java
concordo, non è tanto per pigrizia, ma per praticità, efficienza e velocità.
The time is out of joint; - O cursed spite,
That even I was born to set it right! -
                                            Hamlet
Avatar utente
preben
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1188
Iscrizione: giovedì 12 luglio 2007, 20:58

Re: (Risolto) (Java) errore in fase di compilazione

Messaggio da preben »

Attualmente uso javac perchè non conosco gli altri.
Cmq terrò presente i vostri consigli, e, appena ho un pò di tempo cerco un pò di guide per imparare Eclipse o NetBeans.

Ciao e grazie ancora!
Accusare gli altri delle proprie disgrazie è conseguenza della nostra ignoranza!
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 3 ospiti