如何为整个Eclipse项目设置java.library.path
路径?我正在使用一个依赖于特定操作系统文件的Java库,并需要找到.dll/
.so/
.jnilib
。但该应用程序始终退出并显示错误消息,指出在库路径上找不到这些文件。
我想配置整个项目以使用库路径。我尝试将路径作为VM参数添加到某些Eclipse运行配置中,但未成功。
如何为整个Eclipse项目设置java.library.path
路径?我正在使用一个依赖于特定操作系统文件的Java库,并需要找到.dll/
.so/
.jnilib
。但该应用程序始终退出并显示错误消息,指出在库路径上找不到这些文件。
我想配置整个项目以使用库路径。我尝试将路径作为VM参数添加到某些Eclipse运行配置中,但未成功。
不要修改库路径!Eclipse会自行构建它!
相反,进入项目的库设置,在“Libraries”选项卡中为每个需要本地库的jar /等文件扩展它。在树形视图中,每个库都有源代码/ JavaDoc和本地库位置的项目。
具体来说:选择“Project”,右键单击->“Properties” /“Java Build Path” /“Libraries”选项卡,选择一个.jar文件,将其扩展,选择“Native library location”,单击“Edit”(将出现文件夹选择器对话框)。
在命令行中更改库路径应该是最后的手段,因为您可能会破坏Eclipse已经正确设置的内容。
如果你要将它添加为虚拟机参数,请确保在前面加上-D
:
-Djava.library.path=blahblahblah...
除了已批准答案中描述的方法外,如果您的项目中只有单个本地库,还有另一种方法。
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"));
}
}
c:/windows
的想法证明了这只是一个路径问题,而不是DLL文件的问题。 - vegemite4me以上的解决方法都不能解决我的问题(在使用JDK 1.7_015的Eclipse Juno中)。只有在我将库从project_folder /lib移动到project_folder时,Java才能找到这些库。
我认为设置java.library.path
的另一个原因是想要使用Subversion。Subversion带有许多库,如果没有将java.library.path
添加到系统路径中,Eclipse将无法识别这些库。例如,我在OS-X上,所以库位于\opt\subversion\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
etc...
Path <- ${workspace_loc:name_of_the_project}\lib