2013-03-08 92 views
0

我有vlc便携式应用程序。在我的机器中。 当我尝试使用此代码java绑定vlc

NativeLibrary.addSearchPath(
        RuntimeUtil.getLibVlcLibraryName(), "C:/arun/software_Installations/VLC" 
       ); 

Native.loadLibrary(RuntimeUtil.getLibVlcLibraryName(), LibVlc.class); 

它会抛出异常加载的lib:

Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'libvlc': The specified module could not be found. 

at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:169) 
at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:242) 
at com.sun.jna.Library$Handler.<init>(Library.java:140) 
at com.sun.jna.Native.loadLibrary(Native.java:368) 
at com.sun.jna.Native.loadLibrary(Native.java:353) 
at guvi.VLCJ.main(VLCJ.java:18) 
+0

你确定这条路吗? – Freak 2013-03-08 03:51:28

+0

这条路是正确的。它的便携版本,所以只有路径看起来很奇怪 – reach2arunprakash 2013-03-08 07:11:29

回答

0

首先,你应该尝试

System.load("C:\\Path\\Of\\libvlc.dll"); 

至少以验证您的库可加载。如果没有,它可能会给你有用的错误信息。

然后,搜索文件libvlc.dlllibvlccore.dll文件到您的VLC安装和添加到您写了一首歌 NativeLibrary.addSearchPath()代码的路径。

NativeLibrary.addSearchPath(RuntimeUtil.getLibVlcLibraryName(), "C:/arun/software_Installations/VLC/"); // Make sure the "libvlc.dll" is present in this path. 
Native.loadLibrary(RuntimeUtil.getLibVlcLibraryName(), LibVlc.class); 
LibXUtil.initialise(); 
+0

我正在穿越第一个障碍。现在使用64位JVM,并且必须在我的机器上安装32位虚拟机 – reach2arunprakash 2013-03-08 07:10:59