Ubuntu:未正确定义JAVA_HOME

Art*_*uro 11 java ubuntu java-home

我想在Ubuntu 14.04中安装一些软件(Shibboleth).我已经安装了Java 7 OpenJDK /usr/lib/jvm/,我有这些行/usr/environment

JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64"
export JAVA_HOME
Run Code Online (Sandbox Code Playgroud)

如果我输入echo $JAVA_HOME正确的话/usr/lib/jvm/java-7-openjdk-amd64.但是,当我尝试安装Shibboleth时,我总是得到Error: JAVA_HOME is not defined correctly. Cannot execute java.

有趣的是,如果我输入java命令它可以工作(它指的是/ usr/lib/java,这是一个指向正确的链接).但是,当我尝试运行bash bin/install.shShibboleth时,我收到了JAVA_HOME错误

我已经尝试设置相同结果JAVA_HOMEjre文件夹.有任何想法吗?

Let*_*tor 22

同时添加JAVA_HOMEPATH~/.profile

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
Run Code Online (Sandbox Code Playgroud)

并且,添加以下内容 /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
Run Code Online (Sandbox Code Playgroud)

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

希望能帮助到你.


小智 6

代替

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
Run Code Online (Sandbox Code Playgroud)

我做到了

EXPORT JAVA_HOME='/usr/lib/jvm/java-1.7.0-openjdk-amd64'
Run Code Online (Sandbox Code Playgroud)

作品。


Sai*_*eek 6

从 Ubantu 终端执行:

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/
Run Code Online (Sandbox Code Playgroud)

测试maven运行:

mvn --version
Run Code Online (Sandbox Code Playgroud)

它将给出输出:

Maven home: /usr/share/maven
Java version: 1.7.x.xxx, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-7-openjdk-amd64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.15.0-47-generic", arch: "amd64", family: "unix"
Run Code Online (Sandbox Code Playgroud)