当前位置: 首页 > 知识库问答 >
问题:

Apache Flink错误Java . lang . classnotfoundexception

敖和韵
2023-03-14

有人能帮我解决以下错误吗?我认为版本有一些问题,但我不知道如何解决。我正在尝试运行Apache Flink,我使用Kafka主题作为输入。我在尝试运行Flink时遇到以下错误:

线程“main”中的异常 java.lang.NoClassDefFoundEror: org/apache/flink/util/Preconditions at org.apache.flink.cep.pattern.pattern.where(Pattern.java:130) 在 hes.cs63.CEPMonitor.CEPMonitoring.main(CEPMonitoring.java:55) 由以下原因引起的: java.lang.ClassNotFoundException.java.java:(启动器.java:335) 在 java.郎.类加载器.load类(类加载器.java:357) ...2更多

<dependencies>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-streaming-java_2.10</artifactId>
        <version>1.0.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-cep_2.11</artifactId>
        <version>1.3.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.kafka</groupId>
        <artifactId>kafka-clients</artifactId>
        <version>0.9.0.1</version>
    </dependency>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-connector-kafka-0.9_2.10</artifactId>
        <version>1.0.2</version>
    </dependency>
    <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>2.6.2</version>
    </dependency>
</dependencies>

共有2个答案

栾峰
2023-03-14

您的依赖项flink-cep_2.11使用scala 2.11和flink 1.3.2,而flink-流-java_2.10flink-连接器-kafka-0.9_2.10使用scala 2.10和flink 1.0.2。

您可以将flink-cep降级为所有deps的scala 2.10和flink 1.0.2:

<dependency>
    <groupId>org.apache.flink</groupId>
    <artifactId>flink-cep_2.10</artifactId>
    <version>1.0.2</version>
</dependency>

这将在你的pom.xml中给出最小的差异,但你将从2016年初开始使用库。因此,更好的解决方案是将另外两个 deps 升级到版本 1.3.2 和 scala 2.11:

<dependencies>
  <dependency>
    <groupId>org.apache.flink</groupId>
    <artifactId>flink-streaming-java_2.11</artifactId>
    <version>1.3.2</version>
  </dependency>
  <dependency>
    <groupId>org.apache.flink</groupId>
    <artifactId>flink-cep_2.11</artifactId>
    <version>1.3.2</version>
  </dependency>
  <dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka-clients</artifactId>
    <version>0.9.0.1</version>
  </dependency>
  <dependency>
    <groupId>org.apache.flink</groupId>
    <artifactId>flink-connector-kafka-0.9_2.11</artifactId>
    <version>1.3.2</version>
  </dependency>
  <dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.6.2</version>
  </dependency>
</dependencies>
孟永望
2023-03-14

您应该将flink-streaming-java_2.10和flink-connector-kafka-0.9_2.10依赖项更新到版本1.3.2,以匹配CEP库的版本。并且保持scala版本的一致性——为所有依赖项选择2.10或2.11。

CEP自1.0.2以来有了很大的改进,所以我不建议降级CEP。

 类似资料:
  • 安装(下载 这是Flink的默认配置。 关于这里发生了什么事,有什么建议吗?

  • 我注意到,每次我运行一个新作业时,它所花费的时间比我再次启动它时长20%左右? 如果一个作业运行多次,flink是否缓存一些结果并重用它们?如果是,我如何控制这一点? 我想测量我的任务运行了多长时间,但每次我重新运行它们时,速度都比以前快。

  • 所以我必须检索存储在HDFS中的文件的内容,并对其进行某些分析。 问题是,我甚至无法读取文件并将其内容写入本地文件系统中的另一个文本文件。(我是Flink的新手,这只是一个测试,以确保我正确读取了文件) HDFS中的文件是纯文本文件。这是我的密码: 在我运行/tmp之后,它没有输出。 这是一个非常简单的代码,我不确定它是否有问题,或者我只是做了一些别的错误。正如我所说,我对Flink完全是新手 此

  • 我正在尝试为ApacheFlink导入ScalaAPI流扩展,如中所述https://ci.apache.org/projects/flink/flink-docs-master/apis/scala_api_extensions.html 但是,我的ScalaIDE抱怨以下消息:对象扩展不是包的成员org.apache.flink.streaming.api.scala 我使用的是scala 2

  • 我有以下代码来计算socketTextStream中的单词。累积字数和时间窗字数都是必需的。该程序存在累积计数始终与窗口计数相同的问题。为什么会出现这个问题?根据加窗计数计算累积计数的正确方法是什么?

  • 问题内容: 不知道为什么会收到此错误。这里有很多类似的问题,但到目前为止,没有一个问题对我有用。 我的 ivy文件是 而我的web.xml是 我已经解决了 ivy。仍然有错误。我还可以在eclipse中看到这个类。 我真的很纠结于此。如有任何帮助或建议,我们将不胜感激。 PS:我也尝试添加,但常春藤无法解决。我懂了 问题答案: Jar文件必须在中。或者你可以告诉,它可以在其他位置找到,而不仅仅是。

  • 问题内容: 我收到以下错误 线程“主”中的异常java.lang.NoClassDefFoundError:OrderBook.WriteToExcelSheet.CreateOutPutFile(WriteToExcelSheet.java:20)处的org / apache / xmlbeans / XmlObject,OrderBook.MainMethod.main(MainMethod.

  • 我正在尝试搜索亚马逊的产品广告,并使用botlenose来帮助我做到这一点。但是,我刚刚收到HTTP错误400。 其他一些重要信息: 我来自巴西,我的标签也来自亚马逊。这是个问题吗? 我确实检查了我的钥匙、秘密和标签,一切正常。我确实在StackOverflow上查看了其他一些问题,但对我来说没有任何效果。 当然,出于安全原因,我更改了密钥。 Traceback(最近一次调用最后一次):File"