Could not initialize class org.bytedeco.javacpp.avutil问题解决

最近提供需要提供音视频服务。参考网上的开源程序,提供了一个JAVA版的RTSP转HTTP的服务,并使用ffmpeg作为播放工具。

该程序在自己的机器上没有问题,但生成jar包后放置到服务器上运行出错,出错的关键字是“java.lang.NoClassDefFoundError:Could not initialize class org.bytedeco.ffmpeg.global.avutil”。

服务器是Windows Server2008。

最开始想的是Windows Server2008不支持流媒体服务造成的,安装上KB963697,然后通过MCC安装上流媒体服务后,发现依然如此。

找解决方案,找到了这几篇博客:【FAQ】解决报错Could not initialize class org.bytedeco.javacpp.avutil_bytedeco 报错_weixin_42534940的博客-CSDN博客

解决:Could not initialize class org.bytedeco.ffmpeg.global.avutil_Cyz971010的博客-CSDN博客

https://stackoverflow.com/questions/42829974/java-lang-noclassdeffounderror-could-not-initialize-class-org-bytedeco-javacpp

CameraServerApplication启动失败 · Issue #I2DAD9 · banmajio/RTSPtoHTTP-FLV - Gitee.com

javacv使用笔记 - 雾非雾的情思

发现这一系列提供的解决方案均无法解决该问题,但给了一个思路,是java库的版本的问题。

最后发现github上的javacvGitHub - bytedeco/javacv: Java interface to OpenCV, FFmpeg, and mores​​​​​​​s​​​​​​​s

上面有最新的库配置,文件如下:

<dependencies>
	<dependency>
		<groupId>org.bytedeco</groupId>
		<artifactId>javacv-platform</artifactId>
		<version>1.5.9</version>
	</dependency>

	<!-- Additional dependencies required to use CUDA and cuDNN -->
	<dependency>
		<groupId>org.bytedeco</groupId>
		<artifactId>opencv-platform-gpu</artifactId>
		<version>4.7.0-1.5.9</version>
	</dependency>

	<!-- Optional GPL builds with (almost) everything enabled -->
	<dependency>
		<groupId>org.bytedeco</groupId>
		<artifactId>ffmpeg-platform-gpl</artifactId>
		<version>6.0-1.5.9</version>
	</dependency>
</dependencies>

修改该文件的pom.xml,和上面一致,问题解决。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值