2012-04-26 74 views
1

我在java web應用程序中使用ghost4j。這個lib通過JNA加載一個dll。現在我想把dll放在classpath中,因爲當我運行一個測試時,這個應用程序的工作目錄會改變,使用eclipse在服務器上運行它,或者只是運行一個用於測試目的的主函數。建立路徑中的JNA dll

我如何告訴JNA在類路徑中查找?

我想對像

class.getProtectionDomain().getCodeSource().getLocation().getPath() 

,但我怎麼能這樣programatical添加到搜索路徑?我不喜歡添加VM參數

回答

2

JNA將在jna.library.path中查找本機庫,如果在此處找不到任何內容,則會回退到系統默認值(通常與java.library.path相同)。

System.setProperty("jna.library.path", "/whatever/path/you/want"); 
+0

感謝我用此與class.getProtectionDomain()的組合。getCodeSource()。的getLocation()。的getPath() – wutzebaer 2012-05-09 09:12:22