Flink报错could not be loaded due to a linkage failure

文章目录

1、报错

在Flink上提交作业,点Submit没反应,F12看到接口报错信息为:

大概意思是,由于链接失败,无法加载程序的入口点类xx。没啥鸟用的信息,去日志目录继续分析:

2、原因

入口类在更高版本(55.0)的JDK编译,现在又在尝试使用52.0版本的JDK运行,查下这个编号和JDK的版本对应:

bash 复制代码
45 = Java1.1
46 = Java1.2
47 = Java1.3
48 = Java1.4
49 = Java 5
50 = Java 6
51 = Java 7
52 = Java 8
53 = Java 9
54 = Java 10 
55 = Java 11
56 = Java 12
57 = Java 13

想到,创建Maven项目时,JDK使用的是JDK11,而部署Flink的机器用的JDK环境是JDK8,报错原因就在这儿了!

3、解决

看下原Java的版本:

bash 复制代码
java -version
java --version

查看已安装的Java:

bash 复制代码
yum list installed |grep -i java
或者
rpm -q |grep -i java

卸载旧版本Java环境:

bash 复制代码
yum -y remove java-1.8.0-openjdk*

查看是否卸载成功:

bash 复制代码
java --version
# 输出
-bash: java: command not found

准备安装Java11,先查看yum库中的Java安装包:

bash 复制代码
yum list java*

安装:

bash 复制代码
yum install -y java-11-openjdk.x86_64

# 安装成功,可vim /etc/profile设置环境变量

重启Flink:

bash 复制代码
bin/stop-cluster.sh
bin/start-cluster.sh

问题解决:

相关推荐
tonyabasy8 小时前
Flink 实时数仓开发实战:SQL中也能做到资源精细化管理
flink
大大大大晴天17 小时前
浅聊Flink实时关联计算的不适用场景
flink
大大大大晴天2 天前
深入解析 Flink Kafka Connector:原理、配置与最佳实践
flink
大大大大晴天3 天前
Hudi技术内幕:RecordPayload到RecordMerger
大数据
SelectDB3 天前
秒级弹性、最高降本 70%:SelectDB Serverless 如何重塑云数仓资源效率
大数据·后端·云原生
WhoAmI3 天前
MapReduce框架原理解析一:InputFormat
大数据·hadoop
WhoAmI3 天前
MapReduce框架原理解析三:OutputFormat
大数据·hadoop
WhoAmI3 天前
MapReduce框架原理解析二:Shuffle
大数据·hadoop
大大大大晴天4 天前
Hudi技术内幕:Key Generation原理与实践
大数据
得物技术8 天前
从埋点需求到规则资产:Hermes Agent 重构得物数仓工作流
大数据·llm·ai编程