如何修复Hadoop警告:Ubuntu上发生了非法的反射访问操作错误

2022-09-02 13:18:16

我已经安装了Java并成功了。所有进程运行良好openjdk version "10.0.2"Hadoop 2.9.0

hadoopusr@amalendu:~$ jps
19888 NameNode
20388 DataNode
20898 NodeManager
20343 SecondaryNameNode
20539 ResourceManager
21118 Jps

但是,当我尝试执行任何命令时,例如收到此警告hdfs dfs -ls /

hadoopusr@amalendu:~$ hdfs dfs -ls /
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.apache.hadoop.security.authentication.util.KerberosUtil (file:/usr/local/hadoop/share/hadoop/common/lib/hadoop-auth-2.9.0.jar) to method sun.security.krb5.Config.getInstance()
WARNING: Please consider reporting this to the maintainers of org.apache.hadoop.security.authentication.util.KerberosUtil
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
18/09/04 00:29:24 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

请帮助如何解决此问题。这是我的 ~/.bashrc 文件配置

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"

答案 1

对于这些警告,您无能为力,这与拼图项目和 strong(er) 封装有关。

基本上有一些类叫做,是一些叫做的“模块”的一部分。这个模块“定义”它导出的内容(其他人可以从中使用什么)以及给谁。这也意味着在简单的英语中,这不是供公众使用的 - 不要碰它;做得好,这是他们解决这个问题的努力的一部分。你可以报告这个或尝试升级hadoop,可能是这个已经修复了。sun.security.krb5.Configjava.security.jgsshadoop


答案 2

此问题是由于最新的java升级造成的。请用java 8对其进行配置.它的工作迅速。