繁体   English   中英

如何从 Eclipse 设置 java.library.path

[英]How to set the java.library.path from Eclipse

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

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

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

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

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

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

本地库位置

如果要将其添加为 VM 参数,请确保使用-D前缀:

-Djava.library.path=blahblahblah...

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

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

对于给定的应用程序启动,您可以按照 jim 所说的进行。

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

Window->
  Preferences->
    Java->
      Installed JREs

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

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

您可以简单地将-Djava.library.path=yourPath添加到eclipse.ini

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

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

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

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

点击运行
点击调试...
新的 Java 应用程序
单击参数选项卡
在第二个框(VM 参数)中添加 -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  

等等...

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

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

    Path  <-  ${workspace_loc:name_of_the_project}\lib

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

我正在使用 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

有时我们无法通过直接右键单击项目来获得 Java Build Path。 然后去属性....右键单击并转到属性

然后点击java构建路径属性屏幕

点击添加外部jar

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

这是另一个修复:

我的构建系统 (Gradle) 将所需的本机库 (dll) 添加到 Eclipse 构建路径(右键单击项目 -> 属性 -> Java 构建路径 -> 库)。 告诉构建系统不要将本机 dll 库添加到 Eclipse 类路径解决了这个问题。

您可以在 Eclipse 中添加 vm 参数。

例子 :

-Djava.ext.dirs=cots_lib

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM