如何从Eclipse中设置java.library.path

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

我想configuration这个整个项目来使用库path。 我试图添加path作为虚拟机参数在Eclipse中的一些运行configuration,但没有奏效。

不要乱用图书馆的path! Eclipse自己构build它!

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

具体来说:selectProject ,右键 – > Properties / Java Build Path / Libraries选项卡,select一个.jar,展开它,selectNative library location ,点击Edit ,会出现文件夹select器对话框)

在命令行中使用库path应该是你最后的努力,因为你可能会破坏已经由eclipse正确设置的东西。

本地库位置

如果您将其添加为虚拟机参数,请确保将其作为前缀加上-D

 -Djava.library.path=blahblahblah... 

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

  • 在项目属性 – > Java构buildpath – >选项卡“源”有你的源文件夹的列表
  • 对于每个条目,都有“本地库位置”,它也支持工作区内的path。
  • 这将使Eclipse将其添加到您的java.library.path。

对于一个给定的应用程序启动,你可以这样做,因为吉姆说。

如果你想为整个工作区设置,你也可以在下面进行设置

 Window-> Preferences-> Java-> Installed JREs 

每个JRE都有​​一个“默认虚拟机参数”(如果有任何虚拟机参数设置为运行configuration,我相信这个参数会被完全忽略)。

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

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

只需将* .dll文件添加到您的c:/ windows

你可以从下面的代码中得到java.library.path:然后添加你的dll文件在你得到的任何path下

 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目录)。

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

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

点击运行
点击debugging…
新的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 

等等…

另一个解决scheme是打开“运行configuration”,然后在“环境”选项卡中,设置情侣{path,价值}。

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

  Path <- ${workspace_loc:name_of_the_project}\lib 

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

我使用的是Mac OS X Yosemite和Netbeans 8.02,我得到了同样的错误,我发现的简单解决scheme就像上面这样,当你需要将本地库包含在项目中时,这是非常有用的。 那么下一个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 

我希望这对某个人有用。 我find解决scheme的链接在这里: java.library.path – 它是什么以及如何使用

有时我们不直接右键单击项目就可以获得Java Build Path。 然后去属性…. 右键点击并转到属性

然后点击java构buildpath 属性Scrren

点击添加外部jar

点击标签添加外部jar子,并给你的计算机文件的path,你已经存储jar子。

这是另一个修复:

我的构build系统(Gradle)添加了一个所需的本地库(dll)到Eclipse构buildpath(右键单击项目 – >属性 – > Java构buildpath – >库)。 告诉构build系统不要将本地dll库添加到Eclipse类path中解决了这个问题。

最简单的方法就是使用eclipse IDE本身。 转到菜单并设置构buildpath。 使其指向目录中的JAVA JDK和JRE文件path。 之后,您可以检查将要设置编译文件的构buildpath。 在bin文件夹默认情况下。 最好的办法是让Eclipse自己处理构buildpath,只需要编辑它就像上面给出的解决scheme