Reputation: 8164
This code is from Hadoop and Spark course.I am running it on VM(HDP-sandbox)
[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;
I am new to Hadoop,how to define the classpath?
If I try
hadoop classpath
Output
/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
How to change the javac line?
Upvotes: 0
Views: 5360
Reputation: 117
You can export HADOOP_CLASSPATH in hadoop-env.sh. You can add more jar to HADOOP_CLASSPATH.
Later before running a job run the following commands in shell.
export HADOOP_CLASSPATH=$(hadoop classpath)
echo $HADOOP_CLASSPATH
Upvotes: 3