java - VLCJ:双击时打包的 Jar 无法加载 libvlc 库,但可以通过控制台完美运行

标签 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  

最佳答案

这听起来像是加载所需 VLCj 文件的问题。不仅需要dll,还需要插件目录。随着执行位置从 eclipse 内部移动到文件系统内部,这些文件的路径可能设置不正确。

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

-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 置于 Debug模式。这对于确定出现问题的位置非常有帮助。

-Dvlcj.log=DEBUG

希望对您有所帮助。

关于java - VLCJ:双击时打包的 Jar 无法加载 libvlc 库,但可以通过控制台完美运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13788897/

相关文章:

java - 使用jpa hibernate高并发会无法获取JDBC Connection

java - 将字符串解析为日期 - Java

java - 如何在 Eclipse mars 中为 php 打开 Java 透视图?

java - 使用 vlcj 时出现模块损坏错误

java - 阻止 Java Canvas 在重绘时清除

java - VLCJ 保存媒体播放器捕获

com.sun.tools.javac.code.Symbol$ClassSymbol.isSubClass 处的 Javac 失败

java - 如何触发@Timeout注解?

java - 使用 VLCJ 和 JMF 在 Linux 中播放视频时遇到问题

java - 从 vlcj 播放器数组中播放视频