我正在尝试从Spark开始。我的库中有Hadoop(3.3.1)和Spark(3.2.2)。我已经将SPARK_HOME、PATH、HADOOP_HOME和LD_LIBRARY_PATH设置为各自的路径。我还在运行JDK 17(在终端中回声和-version工作正常)。
然而,我仍然得到以下错误:
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
21/10/25 17:17:07 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
java.lang.IllegalAccessError: class org.apache.spark.storage.StorageUtils$ (in unnamed module @0x1f508f09) cannot access class sun.nio.ch.DirectBuffer (in module java.base) because module java.base does not export sun.nio.ch to unnamed module @0x1f508f09
at org.apache.spark.storage.StorageUtils$.<init>(StorageUtils.scala:213)
at org.apache.spark.storage.StorageUtils$.<clinit>(StorageUtils.scala)
at org.apache.spark.storage.BlockManagerMasterEndpoint.<init>(BlockManagerMasterEndpoint.scala:110)
at org.apache.spark.SparkEnv$.$anonfun$create$9(SparkEnv.scala:348)
at org.apache.spark.SparkEnv$.registerOrLookupEndpoint$1(SparkEnv.scala:287)
at org.apache.spark.SparkEnv$.create(SparkEnv.scala:336)
at org.apache.spark.SparkEnv$.createDriverEnv(SparkEnv.scala:191)
at org.apache.spark.SparkContext.createSparkEnv(SparkContext.scala:277)
at org.apache.spark.SparkContext.<init>(SparkContext.scala:460)
at org.apache.spark.SparkContext$.getOrCreate(SparkContext.scala:2690)
at org.apache.spark.sql.SparkSession$Builder.$anonfun$getOrCreate$2(SparkSession.scala:949)
at scala.Option.getOrElse(Option.scala:189)
at org.apache.spark.sql.SparkSession$Builder.getOrCreate(SparkSession.scala:943)
at org.apache.spark.repl.Main$.createSparkSession(Main.scala:106)
... 55 elided
<console>:14: error: not found: value spark
import spark.implicits._
^
<console>:14: error: not found: value spark
import spark.sql
^
Welcome to
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/___/ .__/\_,_/_/ /_/\_\ version 3.2.0
/_/
Using Scala version 2.12.15 (OpenJDK 64-Bit Server VM, Java 17.0.1)
Type in expressions to have them evaluated.
Type :help for more information.
有没有办法解决这个问题?
打开终端并键入此命令--
确保在lib之后添加本机,如下所示
export HADOOP_OPTS = "-Djava.library.path=$HADOOP_HOME/lib/native"
然后保存文件并在terminal source ~/中键入此命令。巴什尔
试试这个,也许对你有帮助。
不支持Java 17-Spark在Java 8/11上运行(来源:https://spark.apache.org/docs/latest/).
因此,安装Java11并指向Spark。
无法为平台加载本机hadoop库的警告非常常见,并不意味着有任何问题。
我目前正在运行CentOS的服务器上配置hadoop。当运行或时,会出现以下错误: 警告Util.NativeCodeLoader:无法为您的平台加载native-hadoop库...在适用的情况下使用builtin-java类 我运行的是Hadoop 2.2.0。 但是,Hadoop2.x上目录的内容似乎不同,所以我不知道该怎么办。 我还在中添加了这两个环境变量: 导出hadoop_opts=“
我在用Docker-Spark。启动后,它输出: 这个的环境变量是: 它仍然不能工作,并报告相同的错误。 有人能给出一些关于这个问题的线索吗?
问题内容: 我目前正在运行 CentO 的服务器上配置hadoop 。运行或时,出现以下错误: WARN util.NativeCodeLoader:无法为您的平台加载本地hadoop库…在适当情况下使用内置java类 我正在运行 Hadoop 2.2.0。 在线进行搜索会显示以下链接:http : //balanceandbreath.blogspot.ca/2013/01/utilnative
问题内容: 我目前正在运行CentO的服务器上配置hadoop 。运行或时,出现以下错误: WARN util.NativeCodeLoader:无法为你的平台加载本地hadoop库…在适当情况下使用内置java类 我正在运行Hadoop 2.2.0。 在线进行搜索会显示以下链接:http : //balanceandbreath.blogspot.ca/2013/01/utilnativecod
问题内容: 我正在使用docker-spark。启动后,它输出: 其环境变量是: 在CentOS上提到Hadoop“无法为您的平台加载本机Hadoop库”错误之后,我做了以下工作: (1)检查库: 是的,它是图书馆。 (2)尝试添加环境变量: 它不起作用,并报告相同的错误。 (3)尝试添加and 环境变量: 它仍然不起作用,并报告相同的错误。 有人可以提供有关此问题的一些线索吗? 问题答案: 将库
会是什么原因呢?我不明白。 是我的输出文件。