VLCJ:Packed Jar在双击时无法加载libvlc库,但通过控制台完美运行

时间:2012-12-09 15:39:58

标签: java vlcj

我遇到了vlc的问题。我正在使用Eclipse并使用vlcj框架创建了一个小应用程序来播放视频文件。内部Eclipse一切正常但是当我通过Eclipse制作jar可执行文件并双击它时(在Windows上) 64:仅在此平台上测试)没有任何反应。然后我尝试使用“cd myjarfilepath”然后“java -jar myjarname.jar”,一切正常。为什么会发生这种情况以及如何解决?

先感谢stackoverflow的社区。

编辑:

在路径位置:C:\ Users \ user \ Documents \ 31 \ Latest_Win64 \ Needed我有以下文件:

plugins(directory)  
axvlc.dll  
axvlc.dll.manifest  
libvlc.dll  
libvlc.dll.manifest  
libvlccore.dll  
npvlc.dll  
npvlc.dll.manifest  
vlc.exe.manifest  

在我的类路径中,我包含了以下文件:

jna-3.5.1.jar  
platform-3.5.1.jar  
vlcj-2.2.0.jar  
vlcj-2.2.0-javadoc.jar  
vlcj-2.2.0-sources.jar  

1 个答案:

答案 0 :(得分:1)

这听起来像是加载所需的VLCj文件的问题。不仅需要dll,还需要插件目录。当执行位置从eclipse内部移动到文件系统中的后面时,这些文件的路径可能会被错误地设置。

听起来你在eclipse中工作了。这将向我表明你所拥有的应该是有效的。首先,我建议通过将其作为VM参数(如下所示)来获取VLC dll等,而不是将其设置为代码。请记住注释掉您在代码中执行的任何加载,以便依赖命令行参数。

-Djna.library.path={Application Location}/lib
example: -Djna.library.path=C:/myapp/lib


Directory Contents:
lib
-- libblc.dll
-- libvlc5.dll
-- {etc}
/plugins
   /3dnow
   /access
   {etc}

如果仍有问题,请添加以下参数以将VLCj置于调试模式。这对确定失败的地方非常有帮助。

-Dvlcj.log=DEBUG

希望有所帮助。