1

私はJavaWebアプリケーションでghost4jを使用しています。このlibは、JNAを介してdllをロードします。ここで、dllをクラスパスに配置したいと思います。これは、テストを実行したり、Eclipseを使用してサーバーで実行したり、テスト目的でmain関数を実行したりすると、このアプリケーションの作業ディレクトリが変わるためです。

JNAにクラスパスを調べるように指示するにはどうすればよいですか?

私は次のようなことを考えました

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

しかし、どうすればこのプログラムを検索パスに追加できますか?VM引数を追加したくない

4

1 に答える 1

2

JNAはネイティブライブラリを検索し、そこに何も見つからない場合jna.library.pathはシステムのデフォルト(通常はと同じ)にフォールバックします。java.library.path

System.setProperty("jna.library.path", "/whatever/path/you/want");
于 2012-04-27T12:34:02.417 に答える