如何从Eclipse设置java.library.path

Jan*_*usz 207 java eclipse configuration buildpath

如何为整个Eclipse Project设置java.library.path?我正在使用依赖于OS特定文件的Java库,需要找到.dll/.so/.jnilib.但应用程序始终退出并显示错误消息,指出在库路径中找不到这些文件.

我想配置整个项目以使用库路径.我试图将路径作为VM参数添加到eclipse中的某些运行配置,但这不起作用.

Joh*_*ner 292

不要乱用库路径!Eclipse自己构建它!

相反,进入项目的库设置,对于需要本机库的每个jar/etc,在Libraries选项卡中展开它.在树视图中,每个库都有source/javadoc和本机库位置的项目.

具体来说:选择Project,右键单击 - > Properties/Java Build Path/Libraries选项卡,选择一个.jar,展开它,选择Native library location,单击Edit,将出现文件夹选择器对话框)

在命令行上使用库路径混乱应该是你最后的努力,因为你可能会破坏已经由eclipse正确设置的东西.

本机库位置

  • 但是,如果要添加多个文件夹,这是如何工作的? (6认同)
  • 这是个好问题.为什么一个jar有多个本机库文件夹?我很确定有一种方法可以将本机库本身嵌入到jar中,这可能是要走的路? (2认同)
  • 我不能做这个棒.我可以添加本机库路径,但是当我单击"确定"以便一直返回时,再次跳转到项目属性,它会显示"无".我正在使用eclipse Indigo SR2 (2认同)

mat*_*t b 36

如果要将其添加为VM参数,请确保在其前面加上-D:

-Djava.library.path=blahblahblah...
Run Code Online (Sandbox Code Playgroud)

  • 看到这篇文章:http://stackoverflow.com/a/2309723/510583.-Djava.library.path = "$ {workspace_loc:项目}\lib中; $ {ENV_VAR:PATH}" (3认同)

sch*_*pel 22

除了批准的答案中描述的方式之外,如果您的项目中有单个本机库,则还有另一种方法.

  • 在项目属性 - > Java构建路径 - >选项卡"源"中有一个源文件夹列表
  • 对于每个条目,都有"本机库位置",它还支持工作区内的路径.
  • 这将使Eclipse将其添加到您的java.library.path中.

  • 真棒!!!! 非常感谢!!!这解决了我的问题.需要将dylib添加到我的项目和jar中.设置本机库位置修复它! (2认同)

Sco*_*eld 11

对于给定的应用程序启动,您可以像jim所说的那样进行.

如果要为整个工作区设置它,也可以在其下进行设置

Window->
  Preferences->
    Java->
      Installed JREs
Run Code Online (Sandbox Code Playgroud)

每个JRE都有​​一个"默认VM参数"(如果为运行配置设置了任何VM参数,我认为这些参数完全被忽略.)

您甚至可以使用不同的参数设置不同的JRE/JDK,并且一些项目使用一个,其他项目使用另一个.


小智 8

你可以简单地添加-Djava.library.path=yourPatheclipse.ini.


jan*_*wen 6

只需将*.dll文件添加到c:/ windows即可

您可以从以下代码获取java.library.path:然后在您获得的任何路径下添加dll文件

import java.util.logging.Logger;

public class Test {


    static Logger logger = Logger.getLogger(Test.class.getName());
    public static void main(String[] args) {
    logger.info(System.getProperty("java.library.path"));
    }
}
Run Code Online (Sandbox Code Playgroud)


use*_*628 5

我认为还有另一个原因想要设置java.library.path.Subversion附带了许多库,除非可以追加java.library.path,否则Eclipse不会看到它们.例如,我在OS-X上,因此库位于\ opt\subversion\lib下.它们有很多,我想将它们保存在原处(不要将它们复制到标准的lib目录中).

项目设置无法解决此问题.


Gün*_*ter 5

以上解决方案都不适用于我(Eclipse Juno with JDK 1.7_015).当我将它们从project_folder/lib移动到project_folder时,Java只能找到库.