Java applet 小技巧

使用外部 library

applet tag 的 archive 可以接受多個 jar 檔,用 comma 分隔即可

java.lang.UnsatisfiedLinkError: Native Library xxx already loaded in another classloader

當 applet 使用 JNI DLL 時, 執行 applet 的 VM 可以載入 DLL 但是沒有可靠的方法卸載 DLL,這會造成 A 頁面載入 applet 後,B 頁面要再載入執行同一支 applet 時出現以上錯誤。

網路上有利用 CustomClassLoader 跟 System.gc() 來達成,但是比較複雜,比較簡單的作法是讓 applet 在不同 VM 執行以避開這個問題,作法是在 applet tag 加上以下參數

<param name=”separate_jvm” value=”true”>

 

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...