Come ben sapete (e in caso contrario ve lo dico ora) la nuova versione di Mac OS X 10.6 “Snow Leopard” ha chiuso il supporto a versioni di Java precedenti alla 1.6.
Le applicazioni Java che girano in Snow Leopard devono essere quindi compilate per la JVM 1.6 (chiamatela Java6 se preferite) a 32 o a 64 bit.
E Matlab?
Stando alla Documentazione ufficiale di MathWorks, a partire dalla versione 2008a, Matlab è compatibile con Java 6 (ed esiste una guida che spiega come cambiare la JVM usata da Matlab), ma nel mio caso ho avuto una pessima sospresa all’avvio di Matlab in seguito all’installazione: il programma “Matlab Activation” crasha con un errore che segnala la presenza di un log di errori nella cartella /var/folders/ko/…../-Tmp- che riporta nelle righe finali il seguente messaggio:
There was an unexpected exception:
null
See the log file (/var/folders/ko/koQLGLYPG1S+H+GoGYqwkU+++TI/-Tmp-/aws_[username].log) for more details.
Dunque, il problema non è in Matlab, bensì nel programma di attivazione!!!!!
Se avete il file [nomefile.lic] per l’attivazione, potete avviare Matlab da linea di comando in questo modo:
matlab -c /Applications/Matlab_License/lic_standalone.dat
Come indicato qui: https://math.mit.edu/services/help/faq/general.html
Se aveste ancora problemi, il modo per cambiare la JVM (da Terminal) è
export JAVA_JVM_VERSION=1.6
Hello, I have the same problem as you have. How did you fix it? Sorry, but I did not understand italian.
Hello, this is what I did:
put the license file (licensefile.dat) in a folder, open Terminal, move to the folder containing Matlab.app and browse through the pakage content and start matlab with the following command
for example, on terminal, type
cd /Applications/Matlab_version.app/bin
in that directory (the bin/ folder into the Matlab.app package) there is the matlab bin file, run it with the command
matlab -c /path/to/license/licensefile.dat
Hope that helps
Hello,
It works. But do you have to do this every time you run Matlab?
Well, I do. Until the people at Matlab fix the registration process working with Java6 on Mac OS X 10.6, this is the only way I found.
To speed things up a little, you can write a .sh file and CHMOD a+x it so that you can “run” it with Terminal, containing the whole startup line
Ecco un’altra soluzione DEFINITIVA per l’attivazione! A me ha funzionato con la versione 2008 ma credo funzioni con tutte.
E’ sufficiente cambiare le preferenze di Java in modo da dare priorità alla JVM@32bit piuttosto che alla 64. Comunque è tutto spiegato qua:
http://www.mathworks.com/support/solutions/en/data/1-8GS5S1/index.html?product=ML&solution=1-8GS5S1
e appunto, le preferenze vanno impostate come di seguito:
Fantastico! Io mi ero accontentato della mia soluzione visto che il mio uso di Matlab e’ tutt’altro che “intensivo” 😉
Attendiamo che altri utenti commentino, intanto ti ringrazio per il tuo suggerimento!
Pietro il metodo che hai postato funziona benissimo però all’avvio di matlab 2008b nella schermata di comando mi appare questa scritta che non riesco a capire cosa significa:
Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException
at apple.awt.CGraphicsEnvironment.resetDisplays(CGraphicsEnvironment.java:100)
at apple.awt.CGraphicsEnvironment.displayChanged(CGraphicsEnvironment.java:50)
at apple.awt.CToolkit$4.run(CToolkit.java:1310)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:633)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
se qualcuno sa come evitare questa cosa me lo faccia sapere
grazie mille a tutti!!!!
Ciao, in questo periodo non sto usando Matlab e comunque le mie esperienze erano relative alla versione 2009. Mi auguro che qualche utente come Pietro possa postare una soluzione al tuo problema. Se troverò qualche informazione ti farò sapere!
Ciao ma i problemi riscontrati con Snow Leopard possono essere risolti anche per Matlab 2007?
se si come?
La “versione 2007” che citi è un po’ vaga: esistono infatti la 2007a e 2007b.
La 2007a utiilizza la Java virtual Machine 1.5 mentre la 2007b (e seguenti) supportano la 1.6. (Vedi: http://www.mathworks.com/support/solutions/en/data/1-1812J/index.html?solution=1-1812J )
Per questo motivo credo che la soluzione suggerita in questi commenti funzioni al 99% per la 2007b mentre può darsi che tu possa avere più problemi per la 2007a.
Pingback: 2010 in review « Macgix's Weblog
qualcuno può gentilmente aiutarmi? ho istallato MATLAB_2008b, ma presenta il solito problema…come faccio a cambiare Java in modo da dare priorità alla JVM@32bit piuttosto che alla 64 con JAVA 7 e mavericks?
Se esegui “java -version” nel terminale, quale è il risultato?
Hai provato a installare l’aggiornamento di Apple per Java? http://support.apple.com/kb/DL1572