2009-09-26 14 views
8

Alcuni retroscena:rotto Java Mac 10.6

In Mac OS X 10.6 utilizzando MacPorts e ho DYLD_LIBRARY_PATH insieme nel mio .bash_profile.

Il problema:

Quando eseguo java -version ottengo questo errore:

Error occurred during initialization of VM
Unable to load native library: libjava.jnilib

A titolo di un utile forum thread, ho scoperto che il problema è alcuni file nel mio '/ opt/local La directory/lib 'causa problemi a causa dell'impostazione di DYLD_LIBRARY_PATH.

Quando rimuovo i file che iniziano con libgif, libjpeg, libpng e libtiff da '/ opt/local/lib', il problema scompare e `java -version 'funziona, ma le porte che dipendono da quei file si interrompono.

Qualcuno sa di un modo in cui posso conservare i file e continuare a far funzionare correttamente java? Forse impostando il percorso java, che non sono abbastanza sicuro di come fare e tutti i miei tentativi hanno fallito.

Grazie.

risposta

11

Non impostare DYLD_LIBRARY_PATH. A causa di questo env var, il linker dinamico dyld, sta trovando /opt/local/lib/libjpeg.dylib, invece dei diversi /System/Library/Frameworks//ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Resources/libJPEG.dylib di cui ha bisogno.

10

Questo sembra funzionare su OS X Lion:

impostata DYLD_LIBRARY_PATH

0

Sembra una delle possibili cause di questo problema di protezione dei file? Vedi il mio post in questo other thread.

+1

Si prega di non pubblicare risposte che sono solo collegamenti ad altri post. A Stack Overflow, le risposte dovrebbero in realtà contenere soluzioni autonome alle loro domande. I collegamenti sono ottimi, ma dovrebbero essere utilizzati solo per fornire ulteriori informazioni. – Pops