0

WebLogic にデプロイされた Web アプリは、SomeProxy.class のネイティブ メソッドを呼び出します。この SomeProxy.class は共有ライブラリとしてデプロイされます。ネイティブ ライブラリをロードするための静的ブロックがあります。

public class SomeProxy {
    static { 
        System.load("/path/to/jnilib"); 
        setup();
    }
    public static native void setup();
    public native int solve();
}

Web アプリのクライアント クラスには、SomeProxy.class を呼び出す次のコードがあります。

public class SomeClient {

    void use() {
        SomeProxy proxy = new SomeProxy();
        int result = proxy.solve();
    }
}    

Web アプリの最初のデプロイは正常に実行されます。その後、Web アプリは停止され、削除され、再インストールされました。ネイティブ メソッドの呼び出しが失敗し、次のエラー メッセージが表示されました。

java.lang.UnsatisfiedLinkError: package/name/SomeProxy.setup()V
at package.name.SomeProxy.<clinit>(SomeProxy.java:19)
at package.name.SomeClient.use(SomeClient.java:112)
4

0 に答える 0