当前位置: 首页 > 知识库问答 >
问题:

Jar加载DLL找不到依赖库[重复]

公孙嘉禧
2023-03-14

我需要加载一个位于Jar文件之外的DLL,但每当我尝试运行Jar时,都会出现以下错误:

java.lang.UnsatisfiedLinkError: E:\test.dll : Can't find dependent libraries
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(Unknown Source)
        at java.lang.ClassLoader.loadLibrary(Unknown Source)
        at java.lang.Runtime.load0(Unknown Source)

这个问题不是来自DLL,它被编译到64位机器,因为我的电脑是64位的,它没有依赖关系,这个问题只发生在从Jar运行时,当我通过Eclipse运行应用程序时,它运行良好,所有东西都加载良好。

我用来加载DLL的代码是:

File libraryFile = new File("E:\test.dll");
Runtime.getRuntime().load(libraryFile .getPath());

我使用Eclipse来Jar应用程序。

编辑我尝试了使用不同的应用程序进行Jarring,例如Jar Maker和Jar Builder,但没有任何帮助

编辑2我尝试运行这个精确的应用程序,它可以从IDE运行,但不能从Jarred文件运行,尝试移动DLL,但也没有帮助:

public class Test {

    public static void main(String[] args) throws Exception {
        System.load("E:\\test.dll");
    }
}

共有1个答案

宓和同
2023-03-14

是否尝试添加E:\test。类路径中的dll。

 类似资料:
  • 我的java项目使用javax.mail.jar。因此,在netbeans中,我创建了一个新的文件夹库,将jar文件复制到那里,并将其添加到项目属性中。我将这个文件夹添加到git中,它在NetBeans上运行良好。但当我在另一台机器上使用ant构建项目并运行项目jar时 我不确定哪里出了问题。知道怎么让它运行吗? 解决方案:正如@Gimby所指出的,来自Netbeans和ant build的jar

  • 我正在使用本机库格式OCR,添加jar并将dll放入progfile\common文件中,尽管我遇到以下错误,请帮助我。。。。 ibrary.load不满意LinkError: C:\Program Files\Common Files:无法找到依赖库java.lang.ClassLoader$NativeLoader.load(Native Method)在oader.java:1751Clas

  • 当我从以下链接运行代码时,https://github.com/sagioto/lipreading/blob/master/lipreading-gui/src/main/java/edu/lipreading/gui/mainframe.java;我得到以下错误: 线程“Thread-6”java.lang.UnsatisfiedLinkError中出现异常:C:\users\harish r

  • 我最近安装了ImageMagick 6.3.9和JMagick 6.3.9。从这里通过和。 我在NetBeans中将添加到我的项目的库中,并将类路径设置为包含安装ImageMagick的文件夹(我还将放在其中)。 这就是我所做的一切。 然而,当我运行我的程序(它只声明一个并初始化它)时,我得到了以下错误: 为什么会这样,我该如何解决?

  • 我使用的是Maven 3.6.0,我有Spring Boot Maven项目,其pom文件如下: 出于某种原因,我在我的lib文件夹中发现了以下jarlog4j-1.2.14.jar.我想从我的最终战争中排除这个jar,所以我尝试了mvn依赖项:树,但我找不到父依赖项。 我还试图从Eclipse中打开依赖层次结构,但也找不到这个jar。我怎样才能排除这个罐子?

  • 我是lp解决的新手。我正在尝试运行以下代码并收到以下错误: 错误: