2012-04-26 76 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