我试图从磁盘的特定位置使用DLL(因为我使用的是JNotify库).
使用Netbeans 7.4,发生了以下情况:
我的临时计划只做:
System.out.println(System.getProperty("java.library.path"));
作为Netbeans中的VM选项,我设置了:-Djava.library.path=D:/JNotify-dll/.计划产出:D:/Jnotify-dll/.
当我正常运行时java <jarfile>:它没有设置主类,而我在Netbeans选项中设置它.
当我运行它时java -jar <jarfile>:它给了我%PATH%变量.
当我运行它作为java -jar <jarfile> -Djava.library.path=D:/JNotify-dll/它仍然给了我,我的%PATH%变量.
有没有人知道发生了什么?我真的厌倦了它.
在MANIFEST.MF通过Netbeans的生成:
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.9.1
Created-By: 1.7.0_25-b17 (Oracle Corporation)
Class-Path: lib/ORM.jar lib/mysql-connector-java-5.1.23-bin.jar lib/co
mmons-dbcp-1.4-javadoc.jar lib/commons-dbcp-1.4.jar lib/commons-pool-
1.6-javadoc.jar lib/commons-pool-1.6.jar lib/jnotify-0.94.jar
X-COMMENT: Main-Class will be added automatically by build
Main-Class: bf4.bf4logreader.BF4LogReader
Run Code Online (Sandbox Code Playgroud)
编辑: java -jar -Djava.library.path=D:/JNotify-dll/ <jarfile>,但我仍然欣赏答案.
kal*_*ech 12
您需要更改命令行参数的顺序:
java -Djava.library.path=D:/JNotify-dll/ -jar <jarfile>
Run Code Online (Sandbox Code Playgroud)
也可以看看: