【问题标题】:LoadLibrary fails only when running from eclipse & tomcatLoadLibrary 仅在从 eclipse 和 tomcat 运行时失败
【发布时间】:2014-09-30 08:05:23
【问题描述】:

尝试在 64 位 Linux 上使用 Java 加载 Lingo 库时出现 UnsatisfiedLinkError

static{
    System.loadLibrary("lingojni64"); 
     }

设置 LD_LIBRARY_PATH 后

export LD_LIBRARY_PATH=/home/utcn11/lingo14/bin/linux64
  • 从命令行运行时工作正常;

  • 从 Eclipse 运行时会给出: 线程“主”java.lang.UnsatisfiedLinkError 中的异常:java.library.path 中没有 lingojni64

已经尝试过设置

System.setProperty("java.library.path", "/home/utcn11/lingo14/bin/linux64"); 

但同样的错误发生

  • 设置后从 eclipse 运行时
    -Djava.library.path="/home/utcn11/lingo14/bin/linux64" 出现以下错误:

线程“主”java.lang.UnsatisfiedLinkError 中的异常:/home/utcn11/lingo14/bin/linux64/liblingojni64.so.14.0:liblingo64.so.14:无法打开共享对象文件:没有这样的文件或目录

ls -l /home/utcn11/lingo14/bin/linux64

total 41084

lrwxrwxrwx 1 utcn11 utcn11       16 Sep 29 16:36 liblingo64.so -> liblingo64.so.14

lrwxrwxrwx 1 utcn11 utcn11       18 Sep 29 16:36 liblingo64.so.14 -> liblingo64.so.14.0

-rwxr-xr-x 1 utcn11 utcn11  2911124 Oct 15  2013 liblingo64.so.14.0

lrwxrwxrwx 1 utcn11 utcn11       19 Sep 29 16:36 liblingojni64.so -> liblingojni64.so.14

lrwxrwxrwx 1 utcn11 utcn11       21 Sep 29 16:36 liblingojni64.so.14 -> liblingojni64.so.14.0

-rwxr-xr-x 1 utcn11 utcn11    28809 Aug 22  2013 liblingojni64.so.14.0
  • 在tomcat中运行webapp时出现同样的错误

【问题讨论】:

  • 你在 Eclipse 和命令行中使用相同的 x64 JVM 吗?
  • 你在哪里设置 -Djava.library.path 值?在程序参数(或)VM 参数中。请注意,它必须作为 VM 参数的一部分。
  • 我在虚拟机参数中设置了

标签: java linux eclipse tomcat loadlibrary


【解决方案1】:

如果从 Eclipse 运行项目,您可以按照以下步骤操作:

  1. 右键单击项目。
  2. 转到运行方式 -> 运行配置...
  3. 转到环境标签。
  4. 点击New创建一个新的环境变量。
  5. 输入变量的名称 (LD_LIBARY_PATH) 及其路径。
  6. 点击确定,然后点击应用

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-11
    • 2016-11-20
    • 2012-11-29
    • 2021-08-18
    • 2017-06-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多