Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 本机库在作为JAR运行应用程序时无法加载_Java_Spring_Spring Mvc_Jar_Java Native Interface - Fatal编程技术网

Java 本机库在作为JAR运行应用程序时无法加载

Java 本机库在作为JAR运行应用程序时无法加载,java,spring,spring-mvc,jar,java-native-interface,Java,Spring,Spring Mvc,Jar,Java Native Interface,我正在尝试使用JNI将本机库链接到我的java应用程序。当我通过intelliJ运行应用程序时,它能够正确加载库,但当我通过它的Jar运行应用程序时,它无法加载任何内容 我得到了这个例外 java.lang.IllegalArgumentException: name at sun.misc.URLClassPath$Loader.findResource(URLClassPath.java:703) at sun.misc.URLClassPath.findResource(URLClassP

我正在尝试使用JNI将本机库链接到我的java应用程序。当我通过intelliJ运行应用程序时,它能够正确加载库,但当我通过它的Jar运行应用程序时,它无法加载任何内容

我得到了这个例外

java.lang.IllegalArgumentException: name
at sun.misc.URLClassPath$Loader.findResource(URLClassPath.java:703)
at sun.misc.URLClassPath.findResource(URLClassPath.java:225)
at java.net.URLClassLoader$2.run(URLClassLoader.java:572)
at java.net.URLClassLoader$2.run(URLClassLoader.java:570)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findResource(URLClassLoader.java:569)
at org.springframework.boot.loader.LaunchedURLClassLoader.findResource(LaunchedURLClassLoader.java:57)
at java.lang.ClassLoader.getResource(ClassLoader.java:1096)
at com.jniwrapper.DefaultLibraryLoader.findLibrary(SourceFile:181)
at com.jniwrapper.Library.load(SourceFile:127)
我不太明白

我试图执行的代码是

Library  nativeLibrary = new Library(dll.path());
nativeLibrary.getFunction("getVersion");
我已经确认dll在java路径中。jar和ide都试图在相同的位置加载相同的dll,但jar永远无法加载


使用Jar运行应用程序与不使用Jar运行应用程序之间有什么主要区别吗?

您是否遇到任何异常?这将是有益的张贴。另外,您是否使用相同的java可执行文件?是的,它是相同的可执行文件,我已经更新了关于例外的帖子。请添加用于加载库的代码。此外,异常的堆栈跟踪将非常有用。您是否收到任何类型的异常?这将是有益的张贴。另外,您是否使用相同的java可执行文件?是的,它是相同的可执行文件,我已经更新了关于例外的帖子。请添加用于加载库的代码。此外,异常的堆栈跟踪将非常有用。