我刚接触Linux系统,似乎有太多的Java文件夹。

Java -version给我:

Java版本“1.7.0_55” OpenJDK运行时环境(rhel-2.4.7.1。el6_5-x86_64 u55-b13) OpenJDK 64位服务器虚拟机(build 24.51-b03,混合模式)

当我试图构建一个Maven项目时,我得到了错误:

Error: JAVA_HOME is not defined correctly.
We cannot execute /usr/java/jdk1.7.0_05/bin/java

请问root用户和非root用户需要修改哪些文件,java到底在哪里?


当前回答

首先,你需要找出你的电脑上安装了哪个Java,要使用哪个。 对于具有root权限的打开终端。

 sudo su

 ls /usr/lib/jvm/

现在它将列出可用的java版本。 选择列出的版本。

复制路径直到这里。

现在打开bashrc

  nano ~/.bashrc

在末尾添加以下命令

 export JAVA_HOME="path that you copied"

  export PATH=$JAVA_HOME/bin:$PATH

保存文件,然后按Ctrl+S和Ctrl+X退出

现在运行下面的命令:

  source ~/.bashrc

其他回答

作为回答,因为我没有评论的权利。

注意事项:遵循“That Dave Guy”发布的接受答案。

在设置变量之后,请确保对安装它的java目录设置了适当的权限。

chmod -R 755 /usr/java

我用这句话:

export JAVA_HOME=$(readlink -f $(dirname $(readlink -f $(which java) ))/../)

致我的~/。配置文件,因此它在登录时使用默认Java目录的基础。这是bash的。

对于新用户来说,使用vim可能有点困难。我们可以使用gedit文本编辑器代替。

找到/usr/lib/jvm/java - 1. - x.x openjdk 输入“gedit /etc/profile”,如果以非特权身份登录,则使用“sudo gedit /etc/profile” 在行末添加以下内容: export JAVA_HOME="你找到的路径" 导出路径= $ JAVA_HOME / bin: $路径 在当前shell中输入“source /etc/profile”以应用更改

可能是一个好主意来源,无论你编辑保存必须使用新的登录。

: 源/ etc / 或 . / etc /

你编辑过的资料在哪里。

这是一个非常简单的解决问题的脚本

export JAVA_HOME_BIN=`which java`
export JAVA_HOME_DIR=`dirname $JAVA_HOME_BIN`
export JAVA_HOME=`dirname $JAVA_HOME_DIR`

测试方面:

echo $JAVA_HOME