Hadoop的Java环境变量不变吗?

时间:2018-11-01 13:01:00

标签: java hadoop environment-variables

我与 HADOOP 作为ubuntu中的单个节点一起使用,其Java主目录设置为java-8-openjdk-amd64 / jre。

现在我已经在我的Java主页中更改了 bashrc ,以指向jdk-1.8.0(因为我需要将其指向jdk而不是其他项目的jre )。

运行hadoop fs -ls时出现此错误:

/usr/local/hadoop/bin/hadoop: line 166: /usr/lib/jvm/java-8-openjdk-amd64/jre//bin/java: No such file or directory

有人知道如何解决这个问题吗?

这是我的bashrc文件:

 case $- in
    *i*) ;;
     *) return;;
  esac


 HISTCONTROL=ignoreboth


 shopt -s histappend


HISTSIZE=1000
HISTFILESIZE=2000

  [ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"

  if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
   debian_chroot=$(cat /etc/debian_chroot)
  fi


 case "$TERM" in
xterm-color|*-256color) color_prompt=yes;;
 esac



if [ -n "$force_color_prompt" ]; then
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then

    color_prompt=yes
    else
    color_prompt=
    fi
   fi

if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt


case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac


if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi

alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'

alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'


 if [ -f ~/.bash_aliases ]; then
  . ~/.bash_aliases
 fi

 if ! shopt -oq posix; then
 if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
 elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
 fi
 fi
#HADOOP VARIABLES START

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_181
export HADOOP_INSTALL=/usr/local/hadoop
export PATH=$PATH:$HADOOP_INSTALL/bin
export PATH=$PATH:$HADOOP_INSTALL/sbin
export HADOOP_MAPRED_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_HOME=$HADOOP_INSTALL
export HADOOP_HDFS_HOME=$HADOOP_INSTALL 
export YARN_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"

#HADOOP VARIABLES END

1 个答案:

答案 0 :(得分:0)

我解决了我的问题:

我们必须同时更改etc/hadoop/hadoop-env.sh和Java_home:

# set to the root of your Java installation
 export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_181