Hi

你可以尝试配置 HADOOP_CLASSPATH 环境变量[1] 不用非得手动导入Hadoop相关Jar包
[1]
https://nightlies.apache.org/flink/flink-docs-release-1.15/docs/deployment/resource-providers/yarn/#preparation

Best regards
Luning Wang

yuxia <luoyu...@alumni.sjtu.edu.cn> 于2022年6月20日周一 10:07写道:

> Hadoop 环境依赖多个 jar 包,单单一个 hadoop-common 是远远不够地。可以试试使用这个 Flink 提供的 hadoop3 的
> uber 包[1]。
>
>
> 如果还不行地话,把完整堆栈贴一下,看一下是哪个类找不到。
>
> [1]
> https://repository.cloudera.com/artifactory/cloudera-repos/org/apache/flink/flink-shaded-hadoop-3-uber/3.1.1.7.2.8.0-224-9.0/flink-shaded-hadoop-3-uber-3.1.1.7.2.8.0-224-9.0.jar
>
> Best regards,
> Yuxia
>
> ----- 原始邮件 -----
> 发件人: "张 兴博" <xingbozh...@outlook.com>
> 收件人: "user-zh" <user-zh@flink.apache.org>
> 发送时间: 星期一, 2022年 6 月 20日 上午 8:54:21
> 主题: 关于PyFlink的环境问题,期望得到回复。
>
> 您好:
>
>  
> 我是西南财经大学一个在读博士,目前想使用PyFlink,但是遇到了一个问题,我的集群采用的CDH6.2.0,其中的Hadoop为3.0.0版本。当我在pytlink的程序里引入hadoop-common-3.0.0.jar(或hadoop-common-3.0.0-cdh6.2.0.jar)的时候,运行程序就会报错:
> Caused by: java.lang.NoClassDefFoundError: Could not initialize class
> org.apache.hadoop.security.UserGroupInformation
>         at
> org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.security.User$SecureHadoopUser.<init>(User.java:300)
>         at
> org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.security.User.getCurrent(User.java:173)
>         at
> org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.security.UserProvider.getCurrent(UserProvider.java:187)
>         at
> org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.AuthUtil.loginClient(AuthUtil.java:107)
>         at
> org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:128)
>         at
> org.apache.flink.connector.hbase.sink.HBaseSinkFunction.open(HBaseSinkFunction.java:116)
>         at
> org.apache.flink.api.common.functions.util.FunctionUtils.openFunction(FunctionUtils.java:34)
>         at
> org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator.open(AbstractUdfStreamOperator.java:100)
>         at
> org.apache.flink.table.runtime.operators.sink.SinkOperator.open(SinkOperator.java:58)
>         at
> org.apache.flink.streaming.runtime.tasks.RegularOperatorChain.initializeStateAndOpenOperators(RegularOperatorChain.java:107)
>         at
> org.apache.flink.streaming.runtime.tasks.StreamTask.restoreGates(StreamTask.java:700)
>         at
> org.apache.flink.streaming.runtime.tasks.StreamTaskActionExecutor$1.call(StreamTaskActionExecutor.java:55)
>         at
> org.apache.flink.streaming.runtime.tasks.StreamTask.restoreInternal(StreamTask.java:676)
>         at
> org.apache.flink.streaming.runtime.tasks.StreamTask.restore(StreamTask.java:643)
>         at
> org.apache.flink.runtime.taskmanager.Task.runWithSystemExitMonitoring(Task.java:948)
>         at
> org.apache.flink.runtime.taskmanager.Task.restoreAndInvoke(Task.java:917)
>         at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:741)
>         at org.apache.flink.runtime.taskmanager.Task.run(Task.java:563)
>         at java.lang.Thread.run(Thread.java:750)
>
> 我看在github上采用的hadoop-common版本为2.8.5,是不支持3.0.0吗?还是什么原因呀,期望解答,万分感谢。
>

回复