JAVA_HOME 在 Ubuntu 上没有正确定义?

新手上路,请多包涵

我正在尝试在 Ubuntu 14.04 中安装一些软件 (Shibboleth)。我已经在 /usr/lib/jvm/ 中安装了 Java 7 OpenJDK,我在 /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 is not defined correctly. Cannot execute java

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

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

原文由 user411103 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 566
2 个回答

JAVA_HOMEPATH 添加到你的 ~/.profile

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

并且,将以下内容添加到您的 /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

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

希望能帮助到你。

原文由 Let‘sRefactor 发布,翻译遵循 CC BY-SA 3.0 许可协议

从 Ubantu 终端执行:

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

测试maven运行:

 mvn --version

它将给出输出:

 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"

原文由 Sai prateek 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题