PDA

View Full Version : Problema JDK


Voltron
24-04-2009, 17:30
Ciao a tutti.

Premettendo che sono nuovo del mondo apple (ho da poco acquistato un macbook pro), il mio problema riguarda la mancata installazione della jdk 1.6.

Nello specifico, ho completamente aggiornato il sistema (quindi si è anche installato il 'Java for Mac OS X 10.5 Update'), ma ogni volta che da terminale digito:

java -version

risulta sempre essere installata la jdk 1.5 piuttosto che la 1.6 (quella che avrebbe dovuto installare il sopracitato update).

Secondo voi, dove sbaglio?:confused:

Inoltre, dove vengono installate le jdk? (faccio questa domanda perchè ho provato a cancellare la jdk sotto etc/, ma al riavvio dando 'java -version' la jdk funzionava ancora).

ps.: Specifico che come IDE uso Netbeans e che sono ben accetti link a guide sulla configurazione del sistema operativo per la programmazione in java sotto mac!:D
(le guide sul sito apple-developer sono alquanto orrende).

dionisoft
24-04-2009, 17:35
Anch'io sono un quasi neofita del mondo Apple, ma questo problema l'ho risolto semplicemente selezionando la jdk opportuna da Eclipse quando creo il progetto!!

Penso che con Netbeans sia lo stesso!! ;)

Tra l'altro è fondamentale lavorare con la jdk 1.6 perché la 1.5 per Mac non ha diversi gestori per l'interfaccia grafica....

Voltron
24-04-2009, 17:51
Anch'io sono un quasi neofita del mondo Apple, ma questo problema l'ho risolto semplicemente selezionando la jdk opportuna da Eclipse quando creo il progetto!!

Penso che con Netbeans sia lo stesso!! ;)

Tra l'altro è fondamentale lavorare con la jdk 1.6 perché la 1.5 per Mac non ha diversi gestori per l'interfaccia grafica....

Odio Eclipse.....ma Netbeans ha bisogno che gli indichi la directory dove è situata la jdk....quindi si ritorna al problema che la jdk presente nella directory etc/java (o roba simile) è sempre la versione 1.5.

Inoltre, è necessario far puntare al sistema la jdk 1.6 perchè se lanci un jar da terminale sviluppato per quella jdk come fai senza un IDE!? (java -version punta sempre alla 1.5 e con questa verrebbero lanciati i jar da terminale).

dionisoft
24-04-2009, 18:07
Dando un'occhiata ho trovato una cosa che forse può interessarti!!
Lancia questo:
cat System/Library/Java/JavaConfig.plist
e vedi come è settato il path!!
Così dovresti riuscire almeno ad arrivare al classpath!! ;)
In bocca al lupo!!

Voltron
24-04-2009, 18:19
Dando un'occhiata ho trovato una cosa che forse può interessarti!!
Lancia questo:
cat System/Library/Java/JavaConfig.plist
e vedi come è settato il path!!
Così dovresti riuscire almeno ad arrivare al classpath!! ;)
In bocca al lupo!!

Ti ringrazio per il supporto! Come torno a casa provo a smanettare un pò.:)

dionisoft
24-04-2009, 18:24
Continuando a smanettare credo di aver trovato la directory che cercavi!!

cd /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/bin/


Spero che qualcuno più esperto di me possa darci qualche certezza in più!! :D

Enomix
24-04-2009, 21:40
Mi sa che vi state complicando la vita inutilmente :)

Basta far partire la seguente applicazione: /Applicazioni/Utility/Java/Preferenze Java.app

E in seguito trascinare "Java SE 6" in cima alla lista.. in queste modo i jar che lancerete useranno di default la jre 6

Spero di essere stato d'aiuto ;)

Voltron
24-04-2009, 23:10
Mi sa che vi state complicando la vita inutilmente :)

Basta far partire la seguente applicazione: /Applicazioni/Utility/Java/Preferenze Java.app

E in seguito trascinare "Java SE 6" in cima alla lista.. in queste modo i jar che lancerete useranno di default la jre 6

Spero di essere stato d'aiuto ;)

Diciamo che se vuoi avere il pieno controllo di tutto il funzionamento del framework java sotto mac non è la via migliore....(grazie comunque per la dritta).

Allora cercherò di riassumere (sperando di non scrivere castronerie) la struttura di base del framework java sotto mac.

Tutto il framework 'effettivo' java è situato in:

/System/Library/Frameworks/JavaVM.framework

(n.b.: alcune directory come /Home oppure /JavaVM sono dei link ad altre directory).

L'insieme delle jdk disponibili sono situate in:

/System/Library/Frameworks/JavaVM.framework/Versions


La JDK usata di default dal sistema è quella puntata dalla directory

/CurrentJDK

Da questo si deduce che per cambiare jdk basterà far cambiare la directory puntata da /CurrentJDK.

Per fare in modo che il sistema usi di default un'altra jdk tra quelle messe a disposizione, dare da terminale questa serie di comandi:

1) cd /System/Library/Frameworks/JavaVM.framework/Versions
2) sudo mv Current Current.old
3) sudo ln -s x.y Current
4) sudo mv CurrentJDK CurrentJDK.old
5) sudo ln -s x.y CurrentJDK

(al posto di x.y indicare la versione della jdk che si vuole usare es 1.6)


Per maggiori e precise informazioni c'è questa lettura --> http://book.javanb.com/mac-os-x-for-java-geeks/0596004001_macxjvgks-chp-2-sect-2.html

sirus
26-04-2009, 10:41
Per fare in modo che il sistema usi di default un'altra jdk tra quelle messe a disposizione, dare da terminale questa serie di comandi:
Per maggiori e precise informazioni c'è questa lettura --> http://book.javanb.com/mac-os-x-for-java-geeks/0596004001_macxjvgks-chp-2-sect-2.html
Con tutto il bene che voglio al terminale, evito di usarlo se posso cambiare la virtual machine utilizzata di default con un ben più veloce drag & drop. ;)

Voltron
26-04-2009, 12:14
Con tutto il bene che voglio al terminale, evito di usarlo se posso cambiare la virtual machine utilizzata di default con un ben più veloce drag & drop. ;)

Ovvio...;) ma a me che provengo dal mondo Linux e Windows serviva conoscere in modo dettagliato il funzionamento dell'ambiente java sotto mac (visto che apple personalizza la jdk fornita da sun), e il drag&drop, mascherandomi questi funzionamenti, non faceva al caso mio.