主要メッセージの手引き

"J"

java.lang.UnsatisfiedLinkError:

原因

Solaris 2 で Java Workshop 2.0 (または他の Java アプリケーション) を起動しようとすると、次のエラーが表示されます。


java.lang.UnsatisfiedLinkError: setCursor
        at sun.awt.motif.MComponentPeer.initialize(Compiled Code)
        at sun.awt.motif.MTextAreaPeer.initialize(Compiled Code)
        at sun.awt.motif.MComponentPeer.<init>(Compiled Code)
        at sun.awt.motif.MTextAreaPeer.<init>(Compiled Code)
        at sun.awt.motif.MToolkit.createTextArea(Compiled Code)

対処方法

LD_LIBRARY_PATH が、使用されている Java の bin コマンドとの相性があまりよくない Java lib ディレクトリを含むように設定されている可能性があります。たとえば、Solaris 2.6 では、LD_LIBRARY_PATH = /usr/openwin/lib で、Java Workshop は適切に動作しますが、LD_LIBRARY_PATH = /usr/java/lib:/usr/openwin/lib と設定するとエラーが表示されます。Java Workshop は専用のバージョンの JDK を使用しており、起動プロセスは混合したバージョンを参照するからです。

LD_LIBRARY_PATH/usr/java/lib を組み込まなければ問題は解決します。これが必要なのは、Java Invocation API を使用する場合などの特殊な状況だけです。