export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-"/etc/hadoop"}
# Extra Java CLASSPATH elements. Automatically insert capacity-scheduler.
for f in $HADOOP_HOME/contrib/capacity-scheduler/*.jar; do
if [ "$HADOOP_CLASSPATH" ]; then
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$f
else
export HADOOP_CLASSPATH=$f
fi
done
# ... some other lines omitted
# Add Aws jar
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:share/hadoop/tools/lib/*
4条答案
按热度按时间1rhkuytd1#
当你跑的时候
hadoop
命令,它会生成一个文件hadoop-config.sh
存在于$HADOOP_HDFS_HOME/libexec
它通过选择驻留在不同目录中的jar来设置类路径(classpath)。jpfvwuh42#
打开你的bash档案(
~/.profile
或者~/.bash_profile
)用于编辑和添加以下内容:出口
HADOOP_HOME="/usr/local/Cellar/hadoop"
然后换成你自己的路出口
HADOOP_CLASSPATH=$(find $HADOOP_HOME -name '*.jar' | xargs echo | tr ' ' ':')
保存更改并重新加载。来源
~/.profile
h7appiyu3#
根据这篇博文,它位于一个名为
HADOOP_CLASSPATH
. 您可以像设置任何其他环境变量一样设置它,具体取决于您使用的shell。如果你使用bash
,然后你可以像export HADOOP_CLASSPATH=/path/to/wherever:/path/to/wherever/else
.cgvd09ve4#
正如阿尔马斯·谢赫所说
hadoop-config.sh
,但您可以在中添加更多jarhadoop-env.sh
以下是来自hadoop-env.sh
它添加了额外的jar,比如capacity scheduler和aws jar。