如何从Eclipse设置java.library.path

时间:2009-06-05 19:28:00

标签: java eclipse configuration buildpath

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

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

16 个答案:

答案 0 :(得分:289)

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

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

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

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

Native library location

答案 1 :(得分:35)

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

-Djava.library.path=blahblahblah...

答案 2 :(得分:22)

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

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

答案 3 :(得分:11)

对于给定的应用程序启动,您可以像jim所说的那样执行此操作。

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

下进行设置
Window->
  Preferences->
    Java->
      Installed JREs

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

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

答案 4 :(得分:8)

您只需将-Djava.library.path=yourPath添加到eclipse.ini即可。

答案 5 :(得分: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"));
    }
}

答案 6 :(得分:5)

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

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

答案 7 :(得分:5)

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

答案 8 :(得分:4)

点击运行
单击Debug ...
新Java应用程序
单击“参数”选项卡
在第二个框(VM Arguments)中添加-D条目

-Xdebug -verbose:gc -Xbootclasspath/p:jar/vbjorb.jar;jar/oracle9.jar;classes;jar/mq.jar;jar/xml4j.jar -classpath -DORBInitRef=NameService=iioploc://10.101.2.94:8092/NameService  

等...

答案 9 :(得分:3)

另一个解决方案是打开“运行配置”,然后在“环境”选项卡中设置成对{Path,Value}。

例如,添加位于项目根目录的“lib”目录,

    Path  <-  ${workspace_loc:name_of_the_project}\lib

答案 10 :(得分:1)

请记住在PATH中包含本机库文件夹。

答案 11 :(得分:1)

我正在使用Mac OS X Yosemite和Netbeans 8.02,我得到了同样的错误,我发现的简单解决方案如上所述,当您需要在项目中包含本机库时,这非常有用。 Netbeans的下一步也是如此:

1.- Right click on the Project
2.- Properties
3.- Click on RUN
4.- VM Options: java -Djava.library.path="your_path"
5.- for example in my case: java -Djava.library.path=</Users/Lexynux/NetBeansProjects/NAO/libs>
6.- Ok

我希望它对某人有用。 我找到解决方案的链接在这里: java.library.path – What is it and how to use

答案 12 :(得分:0)

有时我们不直接右键单击项目来获得Java Build Path。 然后转到属性.... Right Click and go to properties

然后单击java构建路径Properties Scrren

Click on add external jar

单击选项卡添加外部罐子,并为您存储罐子的计算机文件提供路径。

答案 13 :(得分:0)

这是另一个修复:

我的构建系统(Gradle)在Eclipse构建路径中添加了一个必需的本机库(dll)(右键单击Project - &gt; Properties - &gt; Java Build Path - &gt; Libraries)。告诉构建系统不要将原生dll库添加到Eclipse类路径中解决了这个问题。

答案 14 :(得分:0)

你可以在日食中添加vm参数。

示例: -Djava.ext.dirs = cots_lib

其中cots_lib是您的外部文件夹库。

答案 15 :(得分:-1)

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