PDA

View Full Version : Errore di compilzione java sotto linux


anx721
18-03-2004, 20:22
Dichiaro una classe che estende Jframe, ovviamente importo javax.swing.*, ma dà l'errore:

error:Cannot find class "JFrame" [JLS 8]

Come mai? Uso mandrake 10, e mi pare di aver capito che usa kaffè per compilare/eseguire programmi java, dipende da questo? Posso installare il normale sdk della sun?

Grazie e ciao.

cn73
18-03-2004, 20:39
Questione di classpath...

PGI
18-03-2004, 20:44
Originariamente inviato da anx721
Posso installare il normale sdk della sun?

Io su una mandrake 9 avevo installato l'SDK scaricato direttamente dal sito Sun, non ho avuto problemi di installazione, tutto sembrava funzionare come doveva, credo tu possa farlo anche su una mandrake 10.

Ciao.

anx721
18-03-2004, 21:37
Ok, provero a scaricare l'sdk della sun appnea avro imparato come si istallano i programmi sotto linux :rolleyes:

La cosa strana è che se invece di JFrame uso Frame compila senza problemi...se il problema è il classpath non dovrebbe dare lo stesso problema?

PGI
18-03-2004, 21:58
in effetti dovrebbe. se scrivi "java -version" sulla consolle che ti risponde? Forse hai una versione "antica" delle librerie...strano però, su una Mandrake nuova di zecca. Mah, misteri della tecnologia...

anx721
18-03-2004, 22:11
Originariamente inviato da PGI
in effetti dovrebbe. se scrivi "java -version" sulla consolle che ti risponde? Forse hai una versione "antica" delle librerie...strano però, su una Mandrake nuova di zecca. Mah, misteri della tecnologia...


cavolo, forse è questo il problema,,,viene fuori:

Engine: Just-in-time v3 Version: 1.1.2 Java Version: 1.1

In effetti potevano mettere una versione più recente, tanto più che dicono che linux è il sistema per i programmatori :muro: :muro: :muro:

Ma allora perchè non dà errore quando metto l'istruzione import javax.swing.*;?

PGI
20-03-2004, 13:18
Effettivamente dovrebbe dirti che il package "javax.swing" non esiste, già in compilazione.

prova a frugare nel tuo Hadr Disk cercando i file "rt.jar".

Una volta che l'hai trovato, puoi dare un'occhiata a quello che c'è dentro:

jar -tf rt.jar

stampa su consolle i nomi delle classi ed dei package contenuti nell'archivio (rt.jar è il "core" delle librerie Java). Se c'è javax.swing ma non javax.swing.JFrame...allora mandrake ha un Java proprio strano.