Newsgroup: it.comp.java
Titolo: che fine ha fatto classpath?

Salve a tutti,
Sto cercando di installare jmf. L'installazione automatica per 
piattaforma linux non ha funzionato, e ho provato quindi ad installare a 
mano l'implementazione alljava.
Ovviamente mi si richiede di aggiornare la var di ambiente CLASSPATH... 
il guaio è che non ho nessuna variabile di ambiente che si chiami così!!!
Certo è strano che tutto il resto del jdk funzioni correttamente... 
boh... chiedo a voi!
Grazie,
Giuseppe


Per il funzionamento del jdk nonc'e' bisogno di settare CLASSPATH
tanto le classi di base
(tutte le java.* per intenderci) vengono sempre trovate. Le cose
cambiano se vuoi che vengano trovate le TUE classi o quelle di qualche
framework.
Non e' gia' settata la variabile CLASSPATH? Creala tu no, in uno dei
file che vengono eseguiti al login dallo shello, tipo bashrc. E
ricordati di includere la directory corrente, cioe' il . nel classpath
o potresti avere sorprese...

 o potresti avere sorprese...
Il posto buono e' /etc/environment oppure /etc/profile oppure se hai una
fedora o simili crea un apposito file in /etc/profile.d
Nicola.
-- 
chi va pian va san e va lontan

 file che vengono eseguiti al login dallo shello, tipo bashrc. 
l'ho creata temporaneamente con export CLASSPATH=/home/giu/JMF2.1.1e/lib/
jmf.jar:.
quindi ho provato ad importare un pò di roba:
import javax.media.*
ma la risposta del compilatore è sempre:
bash-3.2$ javac Mp3Recompress.java
Mp3Recompress.java:2: package javax.media does not exist
import javax.media.*;
^
1 error
domani provo a seguire alla lettera il consiglio di riccardo modificando 
bashrc anche se dubito ci sia differenza rispetto a quanto sto facendo 
ora!
Se nel frattempo ci sono altre possibili soluzioni beh... sono molto 
gradite, mi sento menomato a non poter utilizzare qualsiasi framework a 
cui sarei interessato.
Grazie,
Giuseppe


Sicuramente non fara' differenza.... controlla di avere scritto bene
il path e per essere ancora piu' sicuro di non aver fatto errori puoi
settare il classpath direttamente nel comando javac o java, con l
opzione -classpath=TUO_CLASSPATH

 ma la risposta del compilatore è sempre:
Chi lo conosce le evita, dice un noto slogan sull'aids.
:-)
la variabile classpath e' la stessa cosa.
Mi ricordo molti anni fa i guai che mi creo' finche' scopririi che se non la
usi ti levi un mare di guai.
Il punto e' che se usi la variabile classpath dovrai per tutta la tua vita
futura ricordarti che c'e'. Poi ci sono degli ordini di riceca per cui si va
prima nel cp di ambienete e poi nel cp della command line oppure della
webapp oppure dell'apps server o viceversa e potrai spesso e volentieri
avere conflitti di classi.
Il suggerimento e' levarti dalle palle almeno il cp di ambiente. Se lavori
in una tua vm fai un bello script e ci metti dentro la command line con il
tuo cp e via.
evitalo come l'aids il cp d'ambienete :-)
Nicola
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/


le librerie runtime di java non hanno bisogno di essere specificate
nel classpath.
inoltre, per rispondere alle tue perplessità, la variabile di ambiente
può essere "sovrascritta" con il parametro -classpath del java. non
solo, ma una volta fatto il boot della jvm si possono specificare al
suo interno infiniti classloader con classpath differenti: ciò spiega
perchè con (ad esempio) tomcat puoi avere tanti contesti che "vedono"
i loro jar pur restando dentro la propria vm.

 
Uhmm certo hai ragione infatti passando il classpath dal comando 
funziona... della serie meglio non fare domande!
per il momento vado avanti così, magari se poi ho bisogno di distribuire 
però dovrò affrontare il problema credo.
Grazie,
Giuseppe