本文介绍了JAVA_HOME 在 Ubuntu 上没有正确定义?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在 Ubuntu 14.04 中安装一些软件 (Shibboleth).我已经在 /usr/lib/jvm/ 中安装了 Java 7 OpenJDK,并且在 /usr/environment

I am trying to install some software (Shibboleth) in Ubuntu 14.04. I already have Java 7 OpenJDK installed in /usr/lib/jvm/, and I have these lines in /usr/environment

JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64"
export JAVA_HOME

如果我输入 echo $JAVA_HOME 我正确得到 /usr/lib/jvm/java-7-openjdk-amd64.但是,当我尝试安装 Shibboleth 时,我总是收到 Error: JAVA_HOME 未正确定义.无法执行java.

If I type echo $JAVA_HOME I correctly get /usr/lib/jvm/java-7-openjdk-amd64.However, when I try to install Shibboleth I always get Error: JAVA_HOME is not defined correctly. Cannot execute java.

有趣的是,如果我输入 java 命令,它就可以工作(它指的是/usr/lib/java,它是正确的链接).但是,当我尝试运行 Shibboleth 的 bash bin/install.sh 时,出现 JAVA_HOME 错误

Interestingly, if I type java command it works (it refers to /usr/lib/java which is a link to the right one). However, when I try to run bash bin/install.sh of Shibboleth, I get the JAVA_HOME error

我已经尝试将 JAVA_HOME 设置为 jre 文件夹,结果相同.有什么想法吗?

I already tried setting JAVA_HOME to the jre folder with same result. Any ideas?

推荐答案

同时添加 JAVA_HOME &PATH 到你的 ~/.profile

Add both JAVA_HOME & PATH to your ~/.profile

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH

并且,将以下内容添加到您的 /etc/profile.d/java.sh

And, add following to your /etc/profile.d/java.sh

JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export JAVA_HOME
PATH=${JAVA_HOME}/bin:${PATH}
export PATH
JRE_HOME=/usr/lib/jvm/jre
export JRE_HOME
JAVA_OPTS="-XX:+AggressiveOpts -Xms256m -Xmx512m -XX:MaxPermSize=256m -XX:+DisableExplicitGC"
export JAVA_OPTS

有关详细信息,请参阅文档

希望有帮助.

这篇关于JAVA_HOME 在 Ubuntu 上没有正确定义?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!