在 Ubuntu 中哪里设置 JAVA_HOME

在 Ubuntu 中哪里设置 JAVA_HOME

我正在尝试配置 Tomcat 以了解 JAVA_HOME 的位置。我习惯使用 Windows :) ...我应该编辑哪个文件来添加 Java 信息​​,它位于哪里?

答案1

对于开发工作:

如果您的 shell 是 bash(echo $SHELL -> /bin/bash),您可能需要在 /home/<user>/.bashrc 中添加 JAVA_HOME 条目。但是,请注意,如果您只使用一个 Java 版本,则应该安装该软件包,并且大多数情况下不需要显式设置 JAVA_HOME。

此外,有时这样做也很方便:

$ JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun mvn package

这意味着仅为该命令设置JAVA_HOME。

答案2

使用 Oracle JDK,下面是我设置的方法。不要忘记导出命令中的“-p”。

# Set the JAVA_HOME variable
function set_java_home {
  echo "Searching for java ..."
  if [ -z $JAVA_HOME ]; then
      echo "Using default value for JAVA_HOME: /usr/java/default"
      JAVA_HOME=/usr/java/default
  fi
  export -p JAVA_HOME
  echo $JAVA_HOME > java.home.config
  sudo rm /etc/alternatives/java
  sudo ln -s $JAVA_HOME/bin/java /etc/alternatives/java
  echo "JAVA_HOME variable set to $JAVA_HOME and /etc/alternatives set."
}
if [ -f java.home.config ]; then
  JAVA_HOME=$(<java.home.config)
else
  JAVA_HOME_CANDIDATES=$(find /usr -type d -name '*jdk1.6*')
  echo "Found the following candidates for JAVA_HOME. Pick one: "
  echo "---"
  echo $JAVA_HOME_CANDIDATES
  echo "---"
  read USER_SUBMITTED_JAVA_HOME
  echo "You chose $USER_SUBMITTED_JAVA_HOME ."
  JAVA_HOME=${USER_SUBMITTED_JAVA_HOME}
fi
set_java_home

相关内容