如何为整个Eclipse项目设置java.library.path ?我正在使用一个依赖于操作系统特定文件的Java库,需要找到一个.dll/ .so/ .jnilib。但是应用程序总是退出,并提示在库路径上找不到这些文件。

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


当前回答

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

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

具体来说:选择项目,右键单击->属性/ Java构建路径/库选项卡,选择一个。jar,展开它,选择本机库位置,单击编辑,文件夹选择器对话框将出现)

在命令行上打乱库路径应该是您最后的努力,因为您可能会破坏eclipse已经正确设置的某些内容。

其他回答

如果你将它作为一个VM参数添加,请确保以-D作为前缀:

-Djava.library.path=blahblahblah...

最简单的方法是使用eclipse IDE本身。转到菜单并设置构建路径。使它指向您目录中的JAVA JDK和JRE文件路径。之后,您可以检查将要设置编译文件的构建路径。不过默认是在bin文件夹中。最好的方法是允许eclipse自行处理构建路径,并且只对其进行编辑,类似于上面给出的解决方案

只需将*.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"));
    }
}

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

项目设置不能解决这个问题。

上面的解决方案都不适合我(Eclipse Juno和JDK 1.7_015)。当我将它们从project_folder/lib移动到project_folder时,Java只能找到这些库。