javaWeb項目下加載dll文件(轉載)

如果是java project ,只要把dll放在src中,設置一下run配置即可,但是在web project中(據有關數據,60%的人用的是tomcat),這樣做完全不能加載dll。

辦法總是有的,關鍵是如何讓System.loadLibrary("testDll");找到正確的路徑。下面是我總結的方法(試了很多方法,都不行,只有這種方法100%行)。

這個方法就是:

  打開你的tomcat所在目錄下的bin目錄,我的是C:\apache-tomcat-7.0.6\bin,把dll文件拷貝到裏面

  這樣你在web project中運行System.loadLibrary("testDll");就再也不會報UnsatisfiedLinkError

 

  不過,實際佈署到服務器時,還是報異常了,我相當的鬱悶,後來才發現,原來那個server除了tomcat之外,還有一些其他的程序,也就是tomcat被包了一層,雖然server啓動時,tomcat也會啓動,但是tomcat不是主程序。

  於是,我把dll文件放到server的startup.bat的同級目錄下,結果加載dll成功。

  

基於此實踐,我總結成一句話:

  找到主程序運行的目錄(多數爲bin,除了可能被包裝的),把dll文件copy進去。100%運行System.loadLibrary("testDll");就能成功。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章