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吗?还是什么原因呀,期望解答,万分感谢。 >