我正在尝试使用 Java 和 Kinect for Windows Sensor(不是 Xbox 版本)开始使用 OpenNI 2,但遇到了重大问题。
虽然示例 SimpleViewer 程序可以正常运行,但我无法运行 Java 等效程序 (SimpleViewer.java)。在我将 org.openni.jar 添加到我的类路径后,它成功编译,但在尝试运行该程序时,我遇到以下错误:
Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Program Files\Open
NI2\Tools\OpenNI2.jni.dll: Can't find dependent libraries
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary1(Unknown Source)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at org.openni.NativeMethods.<clinit>(NativeMethods.java:44)
at org.openni.OpenNI.initialize(OpenNI.java:113)
at OpenNITest.SimpleViewerApplication.main(SimpleViewerApplication.java:
190)
在阅读了类似的问题后,我尝试了以下方法来尝试解决问题,将我在 OpenNI 中找到的几乎所有库都扔到了 Tools 文件夹(Lib 和 Tools/OpenNI2/Drivers 的内容)中,以防找不到正确的依赖关系。
java -Djava.library.path="C:/Program Files/OpenNI2/Tools" OpenNITest.SimpleViewerApplication
我正在运行 Windows 7 企业版、Java 1.7.0_21 和最新版本的 OpenNI 2。OpenNITest 是我放置示例应用程序的文件夹和包的名称。
如果有人对尝试解决此问题有任何建议,我将不胜感激,因为我已经使用了 3 个小时,但仍然无法解决它。
谢谢!