IntelliJ, JInput and the java.library.path



我正在研究一个使用Jogl和Jinput的Java项目,并且我在Intellij中工作。我遇到了一些问题,无法找到各种DLL。我知道推荐的方法是将DLL提取到文件夹,然后将DLL指向该文件夹的Java.Library.Path。有没有办法以某种方式将这些库包含在项目配置中?我正在从jcenter中提取这些文件,我宁愿指向jar文件并让jna完成工作。

我在下面使用此方法在某些对象需要DLL之前动态设置路径。称为如下:

setDllLibraryPath("C:/yourPathToDLLs")

设置库路径的方法

public static void setDllLibraryPath(String resourceStr) {
    try {
        System.setProperty("java.library.path", resourceStr);
        Field fieldSysPath = ClassLoader.class.getDeclaredField("sys_paths");
        fieldSysPath.setAccessible(true);
        fieldSysPath.set(null, null);//next time path is accessed, the new path will be imported
    } catch (Exception ex) {
        ex.printStackTrace();
        throw new RuntimeException(ex);
    }
}

相关内容

最新更新