如何定义HADOOP类路径?

此代码来自 Hadoop 和 Spark 课程。我在 VM(HDP 沙箱)上运行它


[root@sandbox-hdp Lesson-5.3_hadoop-grep]# javac -classpath /usr/lib/hadoop/hadoop-core.jar -d Grep_classes Grep.java

Grep.java:22: error: package org.apache.hadoop.conf does not exist

import org.apache.hadoop.conf.Configuration;

                             ^

Grep.java:23: error: package org.apache.hadoop.conf does not exist

import org.apache.hadoop.conf.Configured;

                             ^

Grep.java:24: error: package org.apache.hadoop.fs does not exist

import org.apache.hadoop.fs.FileSystem;

                           ^

Grep.java:25: error: package org.apache.hadoop.fs does not exist

import org.apache.hadoop.fs.Path;

我是 Hadoop 新手,如何定义类路径?


如果我尝试


hadoop classpath

输出


/usr/hdp/3.0.1.0-187/hadoop/conf:/usr/hdp/3.0.1.0-187/hadoop/lib/*:/usr/hdp/3.0.1.0-187/hadoop/.//*:/usr/hdp/3.0.1.0-187/hadoop-hdfs/./:/usr/hdp/3.0.1.0-187/hadoop-hdfs/lib/*:/usr/hdp/3.0.1.0-187/hadoop-hdfs/.//*:/usr/hdp/3.0.1.0-187/hadoop-mapreduce/lib/*:/usr/hdp/3.0.1.0-187/hadoop-mapreduce/.//*:/usr/hdp/3.0.1.0-187/hadoop-yarn/./:/usr/hdp/3.0.1.0-187/hadoop-yarn/lib/*:/usr/hdp/3.0.1.0-187/hadoop-yarn/.//*:/usr/hdp/3.0.1.0-187/tez/*:/usr/hdp/3.0.1.0-187/tez/lib/*:/usr/hdp/3.0.1.0-187/tez/conf:/usr/hdp/3.0.1.0-187/tez/conf_llap:/usr/hdp/3.0.1.0-187/tez/doc:/usr/hdp/3.0.1.0-187/tez/hadoop-shim-0.9.1.3.0.1.0-187.jar:/usr/hdp/3.0.1.0-187/tez/hadoop-shim-2.8-0.9.1.3.0.1.0-187.jar

如何更改 javac 行?


慕桂英546537
浏览 121回答 1
1回答

UYOU

您可以在hadoop-env.sh中导出 HADOOP_CLASSPATH 。您可以向 HADOOP_CLASSPATH 添加更多 jar。稍后在运行作业之前在 shell 中运行以下命令。export HADOOP_CLASSPATH=$(hadoop classpath) echo $HADOOP_CLASSPATH参考看这个 
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java