gpt4 book ai didi

java.lang.NoClassDefFoundError : Could not initialize class org. bytedeco.javacpp.avutil

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:17:14 24 4
gpt4 key购买 nike

我使用的是Windows10, eclipse-neon with JDK1.8 版本,我收到以下异常。

Exception in thread "main" java.lang.NoClassDefFoundError: Could not initialize class org.bytedeco.javacpp.avutil
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at org.bytedeco.javacpp.Loader.load(Loader.java:385)
at org.bytedeco.javacpp.Loader.load(Loader.java:353)
at org.bytedeco.javacpp.avformat$AVFormatContext.<clinit>(avformat.java:2719)
at org.bytedeco.javacv.FFmpegFrameGrabber.startUnsafe(FFmpegFrameGrabber.java:391)
at org.bytedeco.javacv.FFmpegFrameGrabber.start(FFmpegFrameGrabber.java:385)
at com.segment.processor.AudioMain.main(ApacheMathAudioMain.java:20)
Error getting static method ID of org/bytedeco/javacpp/Loader/putMemberOffset

这是我在 pom.xml 中使用的依赖项

    <dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacv</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.bytedeco.javacpp-presets</groupId>
<artifactId>ffmpeg</artifactId>
<version>3.0.2-1.2</version>
</dependency>

<dependency>
<groupId>org.bytedeco.javacpp-presets</groupId>
<artifactId>opencv</artifactId>
<version>3.1.0-1.2</version>
</dependency>

<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacpp</artifactId>
<version>0.10</version>
</dependency>

最佳答案

第一个问题

您的版本不匹配。 org.bytedeco.javacpp 版本 0.10 来自 2014 年 12 月,而所有其他版本来自 2016 年 5 月 .您需要使用 org.bytedeco.javacpp1.2 版本,或者更好的是,将所有依赖项更新到最新版本。

您可以在此处查看版本:

org.bytedeco.javacpp-presets » opencv

org.bytedeco.javacpp-presets » ffmpeg

org.bytedeco » javacv

org.bytedeco » javacpp

第二个问题

您只包括 Java 代码的依赖项,但不包括 native 代码的依赖项(opencv 和 ffmpeg 都是 native 库)。您需要包括 opencv-platformffmpeg-platform:

<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacpp</artifactId>
<version>1.4.1</version>
</dependency>
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacv</artifactId>
<version>1.4.1</version>
</dependency>
<dependency>
<groupId>org.bytedeco.javacpp-presets</groupId>
<artifactId>opencv-platform</artifactId>
<version>3.4.1-1.4.1</version>
</dependency>
<dependency>
<groupId>org.bytedeco.javacpp-presets</groupId>
<artifactId>ffmpeg-platform</artifactId>
<version>3.4.2-1.4.1</version>
</dependency>

这将使 Maven 下载并包含适用于 Android、Linux、MacOS 和 Windows(x86 和 x64)的 opencv 和 ffmpeg 库。

关于java.lang.NoClassDefFoundError : Could not initialize class org. bytedeco.javacpp.avutil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42829974/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com