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

Flink应用程序抛出类在Java中找不到异常

平元明
2023-03-14

我有一个带有Yarn的Flink集群,使用flink-quickstart-java原型构建一个演示项目。在使用'mvn clean package-pbuild-jar'命令构建fat-jar之后,并使用'flink run-m yar-cluster-yn2./flink-Snapshot-1.0.jar'提交程序,程序会抛出以下异常:

下面是我的演示:

public static void main(String[] args) {
 final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
 Properties props = new Properties();
 props.setProperty("bootstrap.servers", "ip:port");
 props.setProperty("group.id", "NewFlinkTest");
 DataStreamSource < String > stream = env.addSource(new FlinkKafkaConsumer010 < > ("kafka_test", new SimpleStringSchema(), props));
 stream.addSink(new FlinkKafkaProducer010 < > ("kafka_test_out", new SimpleStringSchema(), props));
 try {
  env.execute("Flink Jar Test");
 } catch (Exception e) {
  e.printStackTrace();
 }
}

和一些版本信息:
FLink版本:1.4.0

Hadoop版本:2.7.2

Kafka版本:0.10.2.1

<?xml version="1.0" encoding="UTF-8"?>
<dependencies>
   <!-- Apache Flink dependencies -->
   <dependency>
      <groupId>org.apache.flink</groupId>
      <artifactId>flink-core</artifactId>
      <version>${flink.version}</version>
   </dependency>
   <dependency>
      <groupId>org.apache.flink</groupId>
      <artifactId>flink-java</artifactId>
      <version>${flink.version}</version>
   </dependency>
   <dependency>
      <!-- This dependency is required to actually execute jobs. It is currently pulled in by           flink-streaming-java, but we explicitly depend on it to safeguard against future changes. -->
      <groupId>org.apache.flink</groupId>
      <artifactId>flink-clients_${scala.binary.version}</artifactId>
      <version>${flink.version}</version>
   </dependency>
   <dependency>
      <groupId>org.apache.flink</groupId>
      <artifactId>flink-streaming-java_${scala.binary.version}</artifactId>
      <version>${flink.version}</version>
   </dependency>
   <!-- explicitly add a standard logging framework, as Flink does not have     a hard dependency on one specific framework by default -->
   <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <version>${slf4j.version}</version>
   </dependency>
   <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>${log4j.version}</version>
   </dependency>
   <dependency>
      <groupId>org.apache.flink</groupId>
      <artifactId>flink-connector-rabbitmq_2.11</artifactId>
      <version>1.4.0</version>
   </dependency>
   <dependency>
      <groupId>org.apache.flink</groupId>
      <artifactId>flink-connector-kafka-0.10_${scala.binary.version}</artifactId>
      <version>1.4.0</version>
   </dependency>
</dependencies>

将kafka-clients:0.10.2.1添加到flink_home/lib/之后,它就可以工作了。但仍然不知道它不读取uber Jar中的类文件的原因。

共有1个答案

鱼志诚
2023-03-14

首先,您可以通过grep'ByteArrayDeserializer'./flink-Snapshot-1.0.jar验证丢失的类是否在jar文件中。

 类似资料:
  • 我试图从方法中抛出异常,但当我编译下面的代码时 编译错误 发射装置。java:14:错误:找不到符号静态void getError()抛出^myException{ 符号:类myException 位置:类启动器 它说了些什么,它无法理解什么是

  • 我正试图用Java开发一个卡片验证程序。方法基本上检查给定的卡号是否有效。我在那里指定了一个条件,该条件应该抛出一个,但它没有 以下是我的Java文件:- 现在,下面的代码片段应该抛出提到的,不是吗,因为我故意从我的main向方法提供无效的参数? 下面是我在控制台中得到的输出

  • 我有一个集群,我可以成功启动,至少这是出现在web UI上,我在其中看到这些信息 我收到这个消息 使用REST应用程序提交协议运行Spark。使用Spark默认的log4j配置文件:org/apache/spark/log4j-defaults.properties 16/08/31 16:59:06 INFO restsubmissionclient:提交请求以在Spark://name25:6

  • 我正在尝试用NLTK中的Malt Parser解析句子。当我执行时,它给出了一个错误,退出代码为1。我在终端上执行了java命令,它给出了“未找到”类异常,我不明白现在是怎么了? java-Xmx1024m-jar/usr/local/bin/malt。jar-w/home/abc/maltparser-1.7.2-c engmalt.linear-1.1-i/home/abc/martparse

  • 本文向大家介绍在java中,程序员如何手动抛出异常呢?,包括了在java中,程序员如何手动抛出异常呢?的使用技巧和注意事项,需要的朋友参考一下 例外是程序执行期间发生的问题(运行时错误)。发生异常时,程序会突然终止,并且生成异常的行之后的代码将永远不会执行。 示例 输出结果 手动抛出异常 您可以使用throw 关键字显式引发用户定义的异常或预定义的异常。 用户定义和预定义的异常有两种类型,每种异常

  • 问题内容: 我正在通过预先设计的Jrxml文件从My Java Web Application创建Jasper报告。该文件位于名为jrxml的目录中的我的Web文件夹(Netbeans)中,因此我尝试使用此方法进行操作。 我收到“文件未找到”异常,因为应用程序期望文件位于某处; 如何在Web文件夹中读取此文件,以及如何在同一文件夹内创建报告? 编辑 如果我不提供任何路径,如果jrxml文件位于该位