如何设置 HADOOP_CLASSPATH 以将本地文件系统与本地作业运行器一起使用?
How to set HADOOP_CLASSPATH for using the local filesystem with a local job runner?
如何设置 HADOOP_CLASSPATH 以将本地文件系统用于本地作业 运行ner?
如何设置本地目录的输入输出路径?
当我尝试使用以下命令 运行 时,mapper 和 reducer 类 会出现 ClassNotFoundException。
hadoop WordCount input/sample.txt output
当前值为:
: hadoop 类路径
/usr/local/hadoop/hadoop-3.2.1/etc/hadoop:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/common/lib/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/common/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/hdfs:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/hdfs/lib/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/hdfs/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/mapreduce/lib/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/mapreduce/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/yarn:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/yarn/lib/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/yarn/*:/usr/local/hadoop/hadoop-3.2.1/etc/hadoop/usr/local/hadoop/hadoop-3.2.1/share/hadoop/common/*.jar
版本:
阿帕奇 hadoop-3.2.1 ,
openjdk 11.0.5。
请帮忙。它对调试很有用。提前致谢。
我相信如果你有 FileNotFound 异常,但你的类路径看起来很好,所以我很难看到你会得到 ClassNotFound 异常
虽然,这条路好像不对/usr/local/hadoop/hadoop-3.2.1/etc/hadoop/usr/local/hadoop/hadoop-3.2.1/share/hadoop/common/*.jar
。
我建议将hadoop-3.2.1
下的所有文件移动到/usr/local/hadoop
,或者至少,将hadoop-3.2.1
目录重命名为/usr/local/hadoop/3.2.1/
默认情况下,Hadoop 作业使用 file:// 路径作为您的 fs.defaultFS
(在 core-site.xml 中定义)
否则,如果您将其更改为使用 hdfs://
,那么您仍然可以像这样使用本地文件
hadoop fs -ls file://
对于 运行 个职位,我建议使用 yarn jar
,而不是 hadoop <name>
。你需要将你的 Java 应用程序隐藏到一个 uber-jar 中,或者使用现有的 hadoop-examples JAR 来 运行 WordCount
如何设置 HADOOP_CLASSPATH 以将本地文件系统用于本地作业 运行ner? 如何设置本地目录的输入输出路径?
当我尝试使用以下命令 运行 时,mapper 和 reducer 类 会出现 ClassNotFoundException。
hadoop WordCount input/sample.txt output
当前值为:
: hadoop 类路径
/usr/local/hadoop/hadoop-3.2.1/etc/hadoop:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/common/lib/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/common/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/hdfs:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/hdfs/lib/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/hdfs/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/mapreduce/lib/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/mapreduce/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/yarn:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/yarn/lib/*:/usr/local/hadoop/hadoop-3.2.1/share/hadoop/yarn/*:/usr/local/hadoop/hadoop-3.2.1/etc/hadoop/usr/local/hadoop/hadoop-3.2.1/share/hadoop/common/*.jar
版本:
阿帕奇 hadoop-3.2.1 ,
openjdk 11.0.5。
请帮忙。它对调试很有用。提前致谢。
我相信如果你有 FileNotFound 异常,但你的类路径看起来很好,所以我很难看到你会得到 ClassNotFound 异常
虽然,这条路好像不对/usr/local/hadoop/hadoop-3.2.1/etc/hadoop/usr/local/hadoop/hadoop-3.2.1/share/hadoop/common/*.jar
。
我建议将hadoop-3.2.1
下的所有文件移动到/usr/local/hadoop
,或者至少,将hadoop-3.2.1
目录重命名为/usr/local/hadoop/3.2.1/
默认情况下,Hadoop 作业使用 file:// 路径作为您的 fs.defaultFS
(在 core-site.xml 中定义)
否则,如果您将其更改为使用 hdfs://
,那么您仍然可以像这样使用本地文件
hadoop fs -ls file://
对于 运行 个职位,我建议使用 yarn jar
,而不是 hadoop <name>
。你需要将你的 Java 应用程序隐藏到一个 uber-jar 中,或者使用现有的 hadoop-examples JAR 来 运行 WordCount